【发布时间】:2018-03-07 17:14:00
【问题描述】:
我正在使用 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(内部服务器错误)
Failed to load (URL): Response to preflight request does not pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http: // localhost: 8100' is therefore not allowed access. The response had HTTP status code 500.
据我了解,报告了有关 Header 的问题,但我已经通知了正确的人并让请求保持打开状态,但它仍然不起作用,这是我的下面的标题。
const header = new HttpHeaders();
header.set('Access-Control-Allow-Origin', '*');
header.set('Content-type', 'application/json');
【问题讨论】:
-
从服务器端,需要给
Access-Control-Allow-Origin权限。 -
我还是外行,怎么办?
-
你在服务器端使用节点吗?
-
我相信是的,这就是我所说的,因为我是躺着的,我唯一做的就是去离子框架的站点,然后通过使用节点的 npm 一步一步地安装所以我相信它是同一个节点。
-
从客户端无法解决这个,在快递服务器中需要添加
app.use(cors({ credentials: true, origin: 'http://localhost: 8100' }));
标签: javascript angularjs ionic-framework http-headers http-post