gpt4 book ai didi

javascript - Amplify.js + Asp.net Web Api 发送多个参数

转载 作者:行者123 更新时间:2023-11-28 09:32:14 25 4
gpt4 key购买 nike

定义ajax调用的js代码:

function InitDataServices() 
{
amplify.request.decoders.myDecoder =
function (data, status, xhr, success, error)
{
if (status === "success") {
success(data);
} else if (status === "fail" || status === "error") {
error(message, status);
} else {
error(message, "fatal");
}
};

amplify.request.define("Emision_FiltrarSeguros", "ajax", {
url: "http://localhost:63721/api/emision/filtrar",
type: "POST",
dataType: "json",
decoder: "myDecoder"
});
}

然后进行实际ajax调用的代码是:

function Emision_FiltrarSeguros(requestData,okFunction, failFunction) 
{
amplify.request({
resourceId: "Emision_FiltrarSeguros",
contentType: "application/json",
data: JSON.stringify(requestData),
success: function (data) {
okFunction(data);
},
error: function (message, level) {
failFunction(message,level);
}
});
};

最后在页面中使用此代码进行调用:

function FiltrarSeguros()
{
this.request = {Ramo:-1,
NroSocio: 107701,
NroSeguro:-1,
NroEndoso:-1,
Vigentes:0,
Patente:"" };
Emision_FiltrarSeguros(request,okFiltrarSeguros, failFiltrarSeguros);
}

Controller 代码是这样的:

public List<FiltroSeguroResponse> Filtrar(FiltroSeguroRequest request)
{
return DLL.Service.EmisionService.FiltrarSeguros(request, "jdh");
}

问题是我从页面 POST 的数据永远不会映射到请求(类型为 FiltroSeguroRequest,其属性与我在 ajax 调用中构建的对象文字相同)参数。怎么了???谢谢。

最佳答案

将内容类型添加到定义放大请求的位置,如下所示:

amplify.request.define("Emision_FiltrarSeguros", "ajax", {
url: "http://localhost:63721/api/emision/filtrar",
type: "POST",
dataType: "json",
decoder: "myDecoder",
contentType: 'application/json; charset=utf-8',
});

关于javascript - Amplify.js + Asp.net Web Api 发送多个参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13609945/

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