正在向生成的WebService帮助程序添加自定义标头



使用从.asmx文件创建的生成javascript时,是否可以添加或自定义标头?

例如,我有一个类似于以下的Web服务:SomeService.asmx

[WebService(Namespace = "https://www.somedomain.com/api/someapi", Description = "api", Name = "someapi")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[ScriptService]
public class WebService : System.Web.Services.WebService
{
[WebMethod]
[HttpPost]
[ScriptMethod(ResponseFormat=ResponseFormat.Json)]
public List<SomeModel> GetData(string SomeArgument)
{
string customHeaderValue = HttpContext.Current.Request.Headers.Get("SomeCustomHeader");
// Do things
}
}

现在使用jQuery,我可以指定自定义标题,如:

jQuery.ajax({
type: 'POST',
url: '/Path/ToFile/Webservice.asmx/GetData',
data: "data",
success: OnSuccessFunc,
error: OnFailureFunc,
headers: {
'SomeCustomHeader': "SomeCustomHeaderValue" <---
}
});

但我知道asmx文件可以生成一些帮助函数javascript,为我处理一切

<script type="text/javascript" src="/Path/ToFile/Webservice.asmx/js"></script>

然后在页面上我可以简单地写

<script type="text/javascript">
Webservice.GetData("data", OnSuccessFunc, OnFailureFunc)
</script>

但是,如何使用生成的javascript版本包含自定义头数据呢?

您可以尝试使用带有$.ajaxSetup((的beforeSendhook为每个请求设置一个标头

请查看此URL。https://www.edureka.co/community/82342/how-to-add-custom-http-header-to-ajax-request-with-javascript

相关内容

  • 没有找到相关文章

最新更新