【发布时间】:2023-03-25 07:46:01
【问题描述】:
目前我正在使用 Express、Node.js、Graphql 构建后端服务器, 我想将数据发布到在线支付系统中,当我成功使用请求发布数据时,我发现它可以在我的终端中控制台一个 HTML 正文,但我想要的是 Graphql 界面可以重定向到平台而不仅仅是输出HTML正文,我该怎么做才能解决这个问题?这是我的参考代码。
Mutation: {
createPayment: async (parent, args, { models, user }) => {
const MerchantID = Merchantvalue;
const TotalAmt = await args.TotalAmt;
const ItemName = await args.ItemName;
const ChoosePayment = await args.ChoosePayment;
const PaymentType = payment value;
const TradeDesc = await args.TradeDesc;
const ReturnURL = returnurl;
const EncryptType = encry;
const MerchantTradeNo = await CheckMacValue.random;
const MerchantTradeDate = await CheckMacValue.datetime;
const TheCheckMacValue = await CheckMacValue.PaymentOnceValue(
MerchantID, PaymentType, TotalAmt, TradeDesc,
ItemName, ReturnURL, ChoosePayment, EncryptType,
);
const formData = {
MerchantID: MerchantID,
MerchantTradeNo: MerchantTradeNo,
MerchantTradeDate: MerchantTradeDate,
TotalAmount: TotalAmt,
ItemName: ItemName,
ChoosePayment: ChoosePayment,
PaymentType: PaymentType,
TradeDesc: TradeDesc,
ReturnURL: ReturnURL,
EncryptType: EncryptType,
CheckMacValue: TheCheckMacValue,
};
//In here I can successfully post data, but I want to redirect rather than just console the body in terminal.
request.post(
{ url: 'https://payment-stage.ecpay.com.tw/Cashier/AioCheckOut/V5', formData: formData },
function optionalCallback (err, httpResponse, body) {
if (err) {
return console.error('upload failed:', err);
}
console.log(body);
});
},
},
【问题讨论】:
-
你检查过快递文件吗?重定向很容易从响应对象处理(参见 res.redirect([status,] path)):expressjs.com/en/api.html
-
我的问题不是 RESTful 中的 res.redirect,我想要的是输入数据到 GraphQL,然后从 GraphQL 界面重定向到另一个网站
标签: node.js post request graphql