http.post上的500(内部服务器错误),角度为2+

时间:2018-04-05 16:27:25

标签: angular api

我的服务功能

public postDetails(Details): Observable<any> {
    let cpHeaders = new Headers({ 'Content-Type': 'application/json' });
    let options = new RequestOptions({ headers: cpHeaders });
    return this.http.post(this.baseUrl + "/api/adm/Dtls", Details,options)
        .map((res: any) => { 
            let data = res.json();
            return data; })
}

TS档案。

let postdata:any= JSON.stringify(Details);

        this.data = this.storageservice.postDetails(postdata);
        this.data.subscribe((result: any) => {
            if (result) {
               console.log(result);
            }
        });

浏览器错误

 OPTIONS http://10.23.233.45/statapi/api/details/Dtls 500 (Internal Server Error)
     Failed to load http://10.23.233.45/statapi/api/details/Dtls: Response for preflight has invalid HTTP status code 500.
    core.js:1448 ERROR Response {_body: ProgressEvent, status: 0, ok: false, statusText: "", headers: Headers, …}

我可以使用Postman发布数据,但我无法通过角度发送数据,我不知道是什么问题。

1 个答案:

答案 0 :(得分:0)

您的服务无法处理CORS Preflight requests

现代浏览器使用CORS来增强安全性。非浏览器应用(如邮递员)不会。为了使其工作,请使Web服务使用正确的CORS标头和200个状态代码响应OPTIONS个请求。