方法中的Http.post和Ionic Framework问题

时间:2018-03-07 17:14:00

标签: javascript angularjs ionic-framework http-headers http-post

我正在使用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');

1 个答案:

答案 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);}
          );
    });