gpt4 book ai didi

javascript - 如何通过 Amplify REST 请求传递正文数据?

转载 作者:行者123 更新时间:2023-12-04 11:48:05 25 4
gpt4 key购买 nike

我正在使用 AWS amplify REST API在 React Native 中向我的 lambda 函数发出 get 请求。 API/Lambda 函数由 Amplify CLI 生成。

  const getData = async (loca) => {
const apiName = "api1232231321";
const path = "/mendpoint";
const myInit = {
body: {
name: "bob",
},
queryStringParameters: {
location: JSON.stringify(loca),
},
};

return API.get(apiName, path, myInit);
};
除非我从该请求中删除正文,否则它只会返回 Error: Network Error没有其他细节。我似乎能够得到 queryStringParameters不过如果我删除 body 对象就好了。
如果我这样做,请求会顺利通过,没有错误
const myInit = JSON.stringify({
body: {
name: "bob",
},
});
但是 bodyevent lambda 中的 (event.body) 始终为空。如果更改 body,结果相同至 data以及。我的第二个想法是,也许我只能使用 POST 传递正文数据。请求但是文档似乎表明您可以使用 GET请求 since it documents how to access said body data ...
Lambda 函数
exports.handler = async(event) => {
const response = {
statusCode: 200,
body: JSON.stringify(event),
};
return response;
};
如何正确传递 body 数据?

最佳答案

Amplify SDK 不会在 API.get() 上发送正文称呼。您的第一个示例看起来不错,但您需要使用 API.post() (或放)代替。

  const getData = async (loca) => {
const apiName = "api1232231321";
const path = "/mendpoint";
const myInit = {
body: {
name: "bob",
},
queryStringParameters: {
location: JSON.stringify(loca),
},
};

return API.post(apiName, path, myInit);
};

关于javascript - 如何通过 Amplify REST 请求传递正文数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62692317/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com