我想为HTTP POST和GET请求启用ASP.NET经典(ASMX)Web服务.我意识到这可以通过添加...在机器或应用程序级别完成
<webServices>
<protocols>
<add name="HttpGet"/>
<add name="HttpPost"/>
</protocols>
</webServices>
Run Code Online (Sandbox Code Playgroud)
..到machine.config或web.config.我的问题是,对于每个Web服务或Web方法级别而不是每个应用程序或计算机,是否可以启用HTTP POST和GET请求?
我的Web服务使用net 3.5sp1用c#编写.
我试图使用jQuery的ajax方法在不同的域上搜索Web服务.在做了一些研究之后,它看起来似乎不允许这是为了防止跨站点脚本.
我遇到了一个包含这一行的工作:
$.support.cors = true;
Run Code Online (Sandbox Code Playgroud)
在我的JavaScript代码的顶部.据我所知,这可以在jQuery中实现跨站点脚本.
这行代码是否会使我的网站更容易受到攻击?我一直听说XSS作为安全问题被讨论过,XSS有合法用途吗?
我是网络服务的新手.在我的项目中,我连接Web Service(一切都是现成的),当我试图运行时,我得到了以下错误.
错误 - >
Uncaught SyntaxError: Unexpected token <
Web服务和我的页面是相同的解决方案,但不同的项目.
相关代码如下:
jQuery (URL:11761)
function GetAllCategories() {
$.ajax({
url: "http://localhost:12015/myWebService.asmx?op=GetCategories",
type: "POST",
dataType: "jsonp",
data: "{}",
contentType: "application/jsonp; charset=utf-8",
success: function (data) {
var categories = data.d;
$.each(categories, function (index, category) {
alert(category.CategoryId);
});
},
error: function (e) {
alert(e.message);
}
});
}
Run Code Online (Sandbox Code Playgroud)
网络服务(网址:12015)
[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public List<Categories> GetCategories()
{
//Code
}
Run Code Online (Sandbox Code Playgroud)
在问这里之前我已经通过这个链接(不能理解)
编辑:
从这篇文章得到了替代答案.