diff --git a/src-tauri/src/main.rs b/src-tauri/src/main.rs index 9556b191..da7c14e2 100644 --- a/src-tauri/src/main.rs +++ b/src-tauri/src/main.rs @@ -101,6 +101,7 @@ async fn actually_send_ephemeral_request( let client = reqwest::Client::builder() .redirect(Policy::none()) + // .danger_accept_invalid_certs(true) .build() .expect("Failed to build client"); diff --git a/src-web/components/ImageView.tsx b/src-web/components/ImageView.tsx new file mode 100644 index 00000000..64f5cc41 --- /dev/null +++ b/src-web/components/ImageView.tsx @@ -0,0 +1,8 @@ +interface Props { + data: string; +} + +export function ImageView({ data }: Props) { + // const dataUri = `data:image/png;base64,${window.btoa(data)}`; + return
Image preview not supported until binary response support is added
; +} diff --git a/src-web/components/ResponsePane.tsx b/src-web/components/ResponsePane.tsx index 21300bad..ee6f366e 100644 --- a/src-web/components/ResponsePane.tsx +++ b/src-web/components/ResponsePane.tsx @@ -21,6 +21,7 @@ import { StatusColor } from './core/StatusColor'; import { TabContent, Tabs } from './core/Tabs/Tabs'; import { Webview } from './core/Webview'; import { EmptyStateText } from './EmptyStateText'; +import { ImageView } from './ImageView'; import { ResponseHeaders } from './ResponseHeaders'; interface Props { @@ -91,15 +92,15 @@ export const ResponsePane = memo(function ResponsePane({ style, className }: Pro )} > {activeResponse && ( - <> -
+ +
{activeResponse.status} {activeResponse.statusReason && ` ${activeResponse.statusReason}`}  •  {activeResponse.elapsed}ms  •  - {Math.round(activeResponse.body.length / 1000)} KB + {(activeResponse.body.length / 1000).toFixed(1)} KB
- +
)} @@ -150,6 +151,9 @@ export const ResponsePane = memo(function ResponsePane({ style, className }: Pro className="px-3" tabs={tabs} > + + + {!activeResponse.body ? ( No Response @@ -167,6 +171,8 @@ export const ResponsePane = memo(function ResponsePane({ style, className }: Pro defaultValue={tryFormatJson(activeResponse?.body)} contentType={contentType} /> + ) : contentType.startsWith('image') ? ( + ) : activeResponse?.body ? ( ) : null} - - - )} diff --git a/src-web/components/RouteError.tsx b/src-web/components/RouteError.tsx index 5370823a..b3a1ddf7 100644 --- a/src-web/components/RouteError.tsx +++ b/src-web/components/RouteError.tsx @@ -15,9 +15,14 @@ export default function RouteError() {
           {message}
         
- + + + +
); diff --git a/src-web/components/core/Webview.tsx b/src-web/components/core/Webview.tsx index 1e24cdd5..4c19812c 100644 --- a/src-web/components/core/Webview.tsx +++ b/src-web/components/core/Webview.tsx @@ -16,12 +16,12 @@ export function Webview({ body, url, contentType }: Props) { }, [url, body, contentType]); return ( -
+