Copy request details
Summary: Copying/Creating a Paste from a network request only copied the domain. Now we are including all request/response data. Reviewed By: jknoxville Differential Revision: D15898038 fbshipit-source-id: 570ca5bb76e65b90b2b467856e6d3747682cc20d
This commit is contained in:
committed by
Facebook Github Bot
parent
3f1ab6be47
commit
48b690169e
@@ -27,7 +27,11 @@ import {
|
|||||||
FlipperPlugin,
|
FlipperPlugin,
|
||||||
} from 'flipper';
|
} from 'flipper';
|
||||||
import type {Request, RequestId, Response} from './types.js';
|
import type {Request, RequestId, Response} from './types.js';
|
||||||
import {convertRequestToCurlCommand, getHeaderValue} from './utils.js';
|
import {
|
||||||
|
convertRequestToCurlCommand,
|
||||||
|
getHeaderValue,
|
||||||
|
decodeBody,
|
||||||
|
} from './utils.js';
|
||||||
import RequestDetails from './RequestDetails.js';
|
import RequestDetails from './RequestDetails.js';
|
||||||
import {clipboard} from 'electron';
|
import {clipboard} from 'electron';
|
||||||
import {URL} from 'url';
|
import {URL} from 'url';
|
||||||
@@ -266,6 +270,31 @@ function buildRow(request: Request, response: ?Response): ?TableBodyRow {
|
|||||||
const domain = url.host + url.pathname;
|
const domain = url.host + url.pathname;
|
||||||
const friendlyName = getHeaderValue(request.headers, 'X-FB-Friendly-Name');
|
const friendlyName = getHeaderValue(request.headers, 'X-FB-Friendly-Name');
|
||||||
|
|
||||||
|
let copyText = `# HTTP request for ${domain} (ID: ${request.id})
|
||||||
|
## Request
|
||||||
|
HTTP ${request.method} ${request.url}
|
||||||
|
${request.headers
|
||||||
|
.map(({key, value}) => `${key}: ${String(value)}`)
|
||||||
|
.join('\n')}`;
|
||||||
|
|
||||||
|
if (request.data) {
|
||||||
|
copyText += `\n\n${decodeBody(request)}`;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (response) {
|
||||||
|
copyText += `
|
||||||
|
|
||||||
|
## Response
|
||||||
|
HTTP ${response.status} ${response.reason}
|
||||||
|
${response.headers
|
||||||
|
.map(({key, value}) => `${key}: ${String(value)}`)
|
||||||
|
.join('\n')}`;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (response) {
|
||||||
|
copyText += `\n\n${decodeBody(response)}`;
|
||||||
|
}
|
||||||
|
|
||||||
return {
|
return {
|
||||||
columns: {
|
columns: {
|
||||||
requestTimestamp: {
|
requestTimestamp: {
|
||||||
@@ -306,7 +335,7 @@ function buildRow(request: Request, response: ?Response): ?TableBodyRow {
|
|||||||
key: request.id,
|
key: request.id,
|
||||||
filterValue: `${request.method} ${request.url}`,
|
filterValue: `${request.method} ${request.url}`,
|
||||||
sortKey: request.timestamp,
|
sortKey: request.timestamp,
|
||||||
copyText: request.url,
|
copyText,
|
||||||
highlightOnHover: true,
|
highlightOnHover: true,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user