C# mvc 前台请求已经是post请求,但是还会报错 因为当用在 GET 请求中时,会将敏感信息透漏给第三方

已经设置为POST请求了,还是报错,怎么办?upload.render({elem: '#test3', url: '/News/UploadWord', method: 'POST', accept: 'file' //普通文件, exts: 'doc|docx' //只允许上传压缩文件,size:5120,before: function (obj) {layer.load();console.log('文件上传中!');},done: function (res) {layer.closeAll('loading');ue.setContent(res.C);}});});在后台设置 JsonRequestBehavior.AllowGet 一样页报错,在本地测试时没问题,到了服务器就不行了。而且是时好时坏,不知道问题出在哪?错误信息:[InvalidOperationException: 此请求已被阻止,因为当用在 GET 请求中时,会将敏感信息透漏给第三方网站。若要允许 GET 请求,请将 JsonRequestBehavior 设置为 AllowGet。]

根据你目前提供的信息,不太好判断具体是什么原因,我猜测可能是下面原因造成的,你自己排查一下

1、使用的上传组件是否支持POST传输,或者是否是设置参数不匹配,未识别
2、IIS的设置里是否存在问题,开发和部署后的区别,最大部分就是中间件不一样了,IIS的不同版本的设置也存在差异,可以在确认一下
3、你可以用POSTMAN试一下你的后台服务,分别试试GET传输模式和POST传输模式,如果POST模式下还有问题,那就不是前台的问题了,很可能是后台设置的问题追问

确实是POST 请求! 难道IIS不识别 GET和POST吗?

追答

在VS中,可以设置代理服务,你用IIS做代理服务,试一下开发时是否也会出现同样问题,如果还是这样,可能就是IIS的设置问题了,先排除一下问题吧,如果是IIS的问题,可以再查一下相关资料,主要得分清IIS版本之后再去查

温馨提示:答案为网友推荐,仅供参考
相似回答