首页 > 解决方案 > 发布请求在 ionic 3 中不起作用

问题描述

我是 Ionic 应用程序开发的初学者,我正在尝试使用以下代码将数据发布到服务器,但我的代码没有命中服务器 url,我收到失败响应,请帮助我完成我的要求

home.ts:

doLogin() {

    //Headers parameters
    var headers = new Headers();
    headers.append('Content-Type', 'application/json');
    let options = new RequestOptions({ headers: headers });

    //Parameters
    let postParams = {
      empId: 'em2',
      password: 'password123',
      deviceId: '957334kjhsd'
    }

    this.http
        .post('http://2c631a4d.ngrok.io/employeeLogin', postParams, options)
        .map(res => res.json())
        .subscribe(
            data => {
              alert("success")
            },
            err => {
              alert("failure")
            }
        );
  }

标签: angularionic3

解决方案


由于跨域问题,您无法发布到服务器端,您必须在您的服务器中允许同源请求,在您的服务器中允许 localhost 请求。如果您使用的是 asp.net 服务器,请在您的 webconfig 和路由器类中添加一些代码行。

离子 http 帖子有一些错误。您必须将数据作为查询字符串传递,如下所示:

Let params = "id="+MyId"+"&title="+MyTitle;
this.http.post(url, params, options) .map(res => res.json())

推荐阅读