Ionic/Angular HTTP post 请求在 android 上不起作用
Posted
技术标签:
【中文标题】Ionic/Angular HTTP post 请求在 android 上不起作用【英文标题】:Ionic/Angular HTTP post request not working on android 【发布时间】:2021-04-10 09:10:09 【问题描述】:我在浏览器中进行测试时使用了 Angular HTTP,它运行良好,但在实际的移动设备上却不行……显然 HTTP angular 在移动设备上不起作用,我不得不将发布请求转换为 ionic native HTTP。我不确定它是否正确转换以及问题是什么...... 此外,获取请求工作正常只是发布请求不起作用。 希望有人可以帮助我。 提前致谢!
我的代码: 角度 HTTP 发布请求
senduserdata(username)
var dataToSend =
username:this.Username,
password:this.Password,
usertype:this.getSelectedSubject,
var url = 'https://mylink.herokuapp.com/login';
this.http.post(url,data:JSON.stringify(dataToSend),responseType: 'text').subscribe(
(data)=>
alert(data);
if(data === "Logged In Successfully!")
this.LoginCustomer();
this.cartservice.setUsernameCustomer(this.Username);
else if(data === "Welcome!")
this.LoginStaff();
this.cartservice.setUsernameStaff(this.Username);
)
离子高级 HTTP 发布请求
senduserdata()
var dataToSend =
username:this.Username,
password:this.Password,
usertype:this.getSelectedSubject,
var url = 'https://mylink.herokuapp.com/login';
this.http.post(url,data:JSON.stringify(dataToSend),responseType: 'text').then(
(data)=>
this.message= JSON.parse(data.data);
alert(this.message)
if(this.message === "Logged In Successfully!")
this.LoginCustomer();
this.cartservice.setUsernameCustomer(this.Username);
else if(this.message === "Welcome!")
this.LoginStaff();
this.cartservice.setUsernameStaff(this.Username);
)
【问题讨论】:
【参考方案1】:更新 原来它适用于浏览器,因为我使用的是 CORS 转换器扩展, 我只需要添加我的 node.js 文件
app.all('*', function(req, res, next)
var origin = req.get('origin');
res.header('Access-Control-Allow-Origin', origin);
res.header("Access-Control-Allow-Headers", "X-Requested-With");
res.header('Access-Control-Allow-Headers', 'Content-Type');
next();
);
var app = express();
var cors = require('cors');
app.use(cors())
【讨论】:
以上是关于Ionic/Angular HTTP post 请求在 android 上不起作用的主要内容,如果未能解决你的问题,请参考以下文章
Ionic + Angular POST 请求返回状态 404
Ionic2,Angular2:如何在使用 http get 进行 REST API 服务调用时避免 CORS 问题?
Ionic 2 / Angular 2 / CORS:HTTP 标头未随请求一起发送
Laravel 5 CORS 问题与 Ionic Angular
ionic/angular2 - 拒绝应用来自 'http://localhost:8100/build/main.css' 的样式,因为它的 MIME 类型('text/html')不受支持