首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在Ionic内部的http请求中使用useBasicAuth?

如何在Ionic内部的http请求中使用useBasicAuth?
EN

Stack Overflow用户
提问于 2017-06-20 00:30:30
回答 4查看 2K关注 0票数 0

我需要使用基本身份验证来发出http请求,但我不知道如何进行。我使用的是ionic2,棱镜和打字稿。我的代码:

代码语言:javascript
运行
复制
    this.http.get("http://address")
     .map(res => res.json())
     .subscribe( data =>{
        console.log(data);
  });

从Ionic文档中我看到了我所需要的,但是我对这些技术很陌生,我无法使用它:useBasicAuth(用户名,密码)

我尝试过这些解决方案,但没有奏效:角2- Http POST请求参数

编辑

我一直在尝试下面的代码

代码语言:javascript
运行
复制
let headers = new Headers();
headers.append('Content-Type', 'application/json');
headers.append('Authorization', 'Basic xxxxxxx=');

let options = new RequestOptions({ headers: headers });

this.http.get("http://VLCwebServerAddress",options)

甚至是

this.http.get("http://VLCwebServerAddress",headers)

如果第二个参数是headers,我将得到响应401,因此Auth失败了。

如果第二个参数是选项,我得到的是Response for preflight has invalid HTTP status code 501,它与服务器端的CORS相关。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2017-06-27 15:44:14

我终于拿到了。我把角和Ionic2-cordova图书馆混在一起。

我没有注意到必须使用import { HTTP } from '@ionic-native/http';

而不是使用import { Http, HttpModule } from '@angular/http';

(这是我在教程和其他问题中看到的代码)然后,我能够使用Ionic2的http文档中列出的所有方法

要记住,当在浏览器上运行ionic serve yourApp时,这个插件不能工作,而是在一个真正的设备上运行应用程序的时候。

我已经多次使用http角库对请求进行检查和尝试,但是一旦我向请求中添加了额外的内容,比如标题,它就会停止工作(不确定是否因为服务器)。谢谢你的回答。

票数 0
EN

Stack Overflow用户

发布于 2017-06-20 02:58:30

当登录成功时,您需要将用户名和令牌存储在会话存储或本地存储中。然后,您需要在请求的标题中发送它们。

代码语言:javascript
运行
复制
getUserByName(username: string) {
let url="http://localhost:8088/rest/user/userName";
let header=new Headers({'Content-Type': 'application/json', 'Authorization': localStorage.getItem("token")});

return this.http.post(url, username, {headers: header});

}

票数 0
EN

Stack Overflow用户

发布于 2017-06-21 10:14:12

只是简单地附加一个标题;

代码语言:javascript
运行
复制
let headers = new Headers();
headers.append('Authorization', 'Basic' + btoa('username' + ":" + 'password'));
this.http.get(url, { headers: headers });
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44641904

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档