OpenHarmony开发者论坛

标题: 使用HTTP访问服务端,返回responseCode=401 [打印本页]

作者: camel    时间: 2024-7-27 10:24
标题: 使用HTTP访问服务端,返回responseCode=401
[md]在电脑上直接输入网址访问,在第一次输入用户名和密码后可以正常访问

![2024-07-27100414.png](https://forums-obs.openharmony.c ... 3pnvqou6aoprgtr.png "2024-07-27 10 04 14.png")

**使用HTTP访问服务端,返回结果code=401("请求要求用户的身份认证"),请问该添加/修改什么才能够正常访问**

```
  http_()
  {
    let httpRequest = http.createHttp()
    httpRequest.request(
      'http://192.168.10.18:80/rw/system',
      {
        method:http.RequestMethod.POST,
        /*  加上这些返回的结果也一样
        extraData: 'Username=' + this.userName + '&Password=' + this.password,
        header:{
          'Accept': 'application/hal+json;v=2.0',
          'Content-Type': 'application/x-www-form-urlencoded;v=2.0',
          'Authorization':"Basic "+"Default user:robotics"
        }
        */

      }
    ).then((rsps:http.HttpResponse)=>{
      this.response = rsps.responseCode.toString()+"\n"
      this.response+=rsps.result+"\n";
    })
      .catch((err)=>{
        this.response ="failed";
      })
  }
```

返回结果 responseCode = 401 ; result=Access Denied. Login required

### 【运行环境】

DevEvoStudio版本:4.0
SDK版本:API9
[/md]
作者: 马迪    时间: 2024-7-27 16:17
一般是通过加header实现

可以在浏览器里看下登陆后是传什么建权
作者: camel    时间: 2024-7-28 09:46
回复 马迪: 请问大佬能推荐一些参考文章吗,关于Authorization格式什么的
作者: hyacinth养花人    时间: 2024-7-30 09:22
Authorization: Basic base64encode(username+":"+password)
Basic字符串+空格+用户名:密码的Base64编码

试试这种格式
作者: 马迪    时间: 2024-8-1 08:31
回复 camel: 看上去类似JAVA中HTTP基本认证(Basic Authentication)

可以参考
https://www.jb51.net/program/3242837xn.htm




欢迎光临 OpenHarmony开发者论坛 (https://forums.openharmony.cn/) Powered by Discuz! X3.5