如何修改请求正文

时间:2019-03-09 12:22:52

标签: node.js json request serverless cloudflare-workers

我正在向工作人员发送发帖请求。 帖子正文内容。

{
    "name": "value",
    "name2": "value2"
}

如果name2 = value2,那么我要修改它:

{
    "name": "value",
    "name2": "NewValue"
}

我正在使用此脚本。

addEventListener("fetch", event => {
  event.respondWith(handleRequest(event.request));
});
async function handleRequest(r) {
  return new Response(r.body, {
    headers: {
      "Content-Type": "application/json",
      corsHeaders
    }
  })
}

如果我json.parse(r.body)不起作用。 我怎样才能做到这一点? 我听说r.body是ReadableStream,所以如何进行修改。 请帮忙。 谢谢。

1 个答案:

答案 0 :(得分:2)

来自MDN docs

request.json().then(function(data) {
  // do something with your data
});

这应该可以帮助您入门:

addEventListener('fetch', event => {
  event.respondWith(handleRequest(event.request))
})

async function handleRequest(request) {
  let requestJSON = await request.json()

  // your logic here

  return await fetch(request, {body: JSON.stringify(requestJSON)})
}

您可能希望将JSON解析限制为满足以下条件的请求:

(request.method ===“ POST” && request.headers.get(“ Content-Type”)===“ application / json”)

相关问题