Skip to content

Commit

Permalink
✨ Håndtering av 204 respons
Browse files Browse the repository at this point in the history
  • Loading branch information
thomasrognes authored May 22, 2024
2 parents acba8a9 + 7cfe127 commit cd944c3
Showing 1 changed file with 19 additions and 13 deletions.
32 changes: 19 additions & 13 deletions lib/utils/api/simpleTokenXProxy.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { validateToken, requestOboToken, getToken } from '@navikt/oasis';
import { logError, logInfo } from '@navikt/aap-felles-utils';
import { getToken, requestOboToken, validateToken } from '@navikt/oasis';
import { logError, logInfo, logWarning } from '@navikt/aap-felles-utils';
import { randomUUID } from 'crypto';
import { IncomingMessage } from 'http';
import { ErrorMedStatus } from 'lib/utils/api/ErrorMedStatus';
Expand Down Expand Up @@ -64,21 +64,27 @@ export const simpleTokenXProxy = async <T>({
body: method === 'POST' ? JSON.stringify(body) : undefined,
});

try {
if (response.ok) {
logInfo(`OK ${url}, status ${response.status}, callId ${navCallId}`);
const headers = response.headers.get('content-type');
const isJson = headers?.includes('application/json');
if (response.ok) {
logInfo(`OK ${url}, status ${response.status}, callId ${navCallId}`);

// TODO: Midlertidig, til innsending returnerer json på alle OK-responser
if (!isJson) {
return (await response.text()) as T;
if (response.status === 204) {
return {} as T;
}

const headers = response.headers.get('content-type');
const isJson = headers?.includes('application/json');

if (isJson) {
try {
return await response.json();
} catch (e) {
logWarning(`Kunne ikke parse json i simpleTokenXProxy for ${url}`);
}
return await response.json();
}
} catch (error) {
logError(`Unable to parse response for ${url}`, error);

return (await response.text()) as T;
}

logError(
`Error fetching simpleTokenXProxy. Fikk responskode ${response.status} fra ${url} med navCallId: ${navCallId}`,
);
Expand Down

0 comments on commit cd944c3

Please sign in to comment.