getting Fetch response data

依然范特西╮ 提交于 2021-01-15 06:40:47

问题


I'm using the chrome devTools to mirror a webRequest. Looking at the network request, there is some JSON data in the response that I want to get access to

Right click --> Copy as fetch -->

fetch(
    "https://www.url.com/service.svc?action=FindConversation&ID=-40&AC=1",
    {
        "credentials":"include",
        "headers":{
            "accept":"*/*",
            "accept-language":"en-US,en;q=0.9",
            "action":"FindConversation",
            "content-type":"application/json; charset=UTF-8",
            "actionid":"-40",
            "unique_identifier":"062lCufCY0i5mI9NMTRUsF87XDq9ttYIonzZQjBcCOPvzoIJFOTSI6ZVNK9lMwy_iPFY2tuZzPY."
            "x-requested-with":"XMLHttpRequest"
        },
        "referrer":"https://ballard.amazon.com/OWA/",
        "referrerPolicy":"no-referrer-when-downgrade",
        "body":"contains some body data I want to manipulate",
        "method":"POST",
        "mode":"cors"
    }
).then(res => {console.log(res)})

This prints out something like this:

Response {type: "basic", url: "https://url/service.svc?action=FindConversation&ID=-40&AC=1", redirected: false, status: 200, ok: true, …}
body: ReadableStream
locked: false
__proto__: ReadableStream
bodyUsed: false
headers: Headers {}
ok: true
redirected: false
status: 200
statusText: "OK"
type: "basic"
url: "https://url/OWA/service.svc?action=FindConversation&ID=-40&AC=1"
__proto__: Response

When I inspect the network request I just made, it looks like it isn't returning any JSON data, but responds with a 200 code. Is that normal?

I either expected it to return JSON data or fail.

Also, where would the JSON response data be in the res?


回答1:


This is normal behavior. fetch() returns a stream object and not just the body.

Use res.json() to extract the JSON content. For non JSON responses, use res.text()



来源:https://stackoverflow.com/questions/55460648/getting-fetch-response-data

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!