我正在使用Ionic Framework 3.19.1开发一个应用程序,我通过post发出请求,URL数据和必要的参数信息都可以,但是它返回了一个我无法解决的错误,我有尝试了许多方法,进口到项目中,但没有成功。下面是我的职位。
const req = this.http.post(url, {
options: {
headers:[header],
params:[postData]
}
}).subscribe(
res => {
console.log(res);
},
err => {
console.log('Ocorreu um erro');
}
)
以下是我在.ts文件(TypeScript)中的导入
import { Component } from '@angular/core';
import { TranslateService } from '@ngx-translate/core';
import { IonicPage, NavController, ToastController } from 'ionic-angular';
import { HttpClient, HttpParams, HttpHeaders, HttpErrorResponse } from '@angular/common/http';
import { IonicStorageModule } from '@ionic/storage';
import { User } from '../../providers/providers';
import { MainPage } from '../pages';
好吧,就像我说我正在做一个帖子请求,然后在控制台上它返回一个OPTIONS 500(内部服务器错误)
无法加载(URL):对预检请求的响应未通过访问控制检查:请求的资源上不存在“Access-Control-Allow-Origin”标头。因此不允许Origin'http:// localhost:8100'访问。响应的HTTP状态代码为500。
根据我的理解报告了一个关于标题的问题,但我已经通知了正确的一个并且请求打开了,但它仍然不起作用,这是我的标题。
const header = new HttpHeaders();
header.set('Access-Control-Allow-Origin', '*');
header.set('Content-type', 'application/json');
答案 0 :(得分:0)
更改 const req
return new Promise((resolve, reject) => {
this.http.post(url, postData,
{headers: this.header})
.subscribe(
data => {
console.log('success');
resolve(data);
},
err => {
reject(err);
console.log(err);}
);
});