.net mvc Angular2项目 ajax请求返回结果异常处理

前端使用Angular2进行Ajax请求时,遇到后台返回错误数据的情况。当控制器捕获异常并返回带有isSuccess和MessageInfo字段的JSON对象时,本地测试正常,但在远程服务器上,IIS会将状态码设为500。解决方法是在C#代码中过滤响应状态码或在Angular代码中统一处理数据获取,确保无论是否有异常都能正确解析返回的data。同时,注意contentType的设置,以适应multipart/form-data类型的请求。
摘要由CSDN通过智能技术生成

前端ajax请求后,后台出错返回错误data的数据,展示返回错误的message。

跟剧请求头,如果是ajax的请求,返回一个json的object的回去,属性中会有isSuccess,与MessageInfo 等字段,根据是否是exception,会在controller实现重写OnExcetion

方法,但是默认情况下IIS中 .net中会是error remote only.所以在本地server测试的时候,返回的json数据,请求头都是200,但是在remote情况下,就是返回500错误的状态码,所以导出返回的json data 数据类型有些变化,这里就导致了同一份代码,在本地是working的但是部署到服务器里 从外面访问时候就到吃data转化问题拿不到值得错误。

angular js代码 设置请求头参数

    options: RequestOptions;
    constructor(private http: Http) {
        let headers = new Headers();
        headers.append('X-Requested-With', 'XMLHttpRequest');
        this.options = new RequestOptions({ headers: headers });

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值