角度 4 休息后响应与"SyntaxError: Unexpected end of JSON input at JSON.parse"



下面我有以下 Angular 段,它似乎试图将响应处理为 JSON,即使"httpOptionsText"是一个常量定义为:

const httpOptionsText = {
headers: new HttpHeaders({
'Content-Type': 'text/plain'
})
}; 
addOrders(order, rootUri): Promise<DetailOrderbean[]> {
let body = JSON.stringify(order);
const url = rootUri + 'api/data/addDetailOrder?order=' + body;
return this.http.post<DetailOrderbean>(url, body, httpOptionsText)
.toPromise()
.then(res => {
console.log(res);
})
.catch(this.handleError);
}

此外,Java 正在指定

response.setContentType( "text/plain");
response.setHeader("Access-Control-Allow-Origin", 
"http://localhost:4200");
response.setHeader("Access-Control-Allow-Credentials","true");

状态为 200,所以我只想消耗错误。 但是,如果发生实际错误,我需要句柄错误,因为它退出:

private handleError(error: any): Promise<any> {
console.error('An error occurred', error);
return Promise.reject(error.message || error);
}

我不恰当地将一个结构转换为强制 json 转换的 post((。 这也可以从编译错误中看到:

属性"响应类型"的类型不兼容。 类型"文本"不可分配给类型"json"。

这应该告诉我我的返回响应类型出了问题。

相关内容

最新更新