首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >尝试从Ubiquity Unify API获取数据时出现Python 2.6 json错误400和401

尝试从Ubiquity Unify API获取数据时出现Python 2.6 json错误400和401
EN

Stack Overflow用户
提问于 2017-04-01 19:56:17
回答 1查看 194关注 0票数 0

我正在尝试从Ubiquity统一门户网站生成凭证。它有一个API,有一些想法可以在PHP中使用,但我想使用Python2.6来生成..(如果有必要,我可以使用其他Python版本)

我的代码是:

代码语言:javascript
复制
import urllib, json
import urllib2
import unifi
import os
import requests

def JsonLogin():
    payload = {"username" : "myuser","password" : "mypassword"}
    r = requests.post("https://ubnt.myserver.com:8443/api/login", data=payload, verify=False)
    print r

def JsonApi():
    payload = {"cmd":"create-voucher","minutes":1440,"n":1}
    r = requests.post("https://ubnt.myserver.com:8443/api/cmd/hotspot", data=payload, verify=False)
    print r

JsonLogin();
JsonApi();

我的结果是:

代码语言:javascript
复制
   <Response [400]>
   <Response [401]>

有没有什么逻辑可以解释为什么它返回400,这意味着错误...这是因为我发送了无效的JSON,还是因为语法或JSON标记错误?

EN

回答 1

Stack Overflow用户

发布于 2018-03-10 16:42:30

尝尝这个

payload=‘{“用户名”:"myuser",“密码”:"mypassword",“requests.post”:true}’r= requests.post("https://ubnt.myserver.com:8443/api/login",data=payload,verify=False)打印r

它应该返回200

然后以某种方式将登录返回的Cookie值设置到变量cookies=r.cookies中

然后

R= requests.post("https://ubnt.myserver.com:8443/api/cmd/hotspot",data=payload,verify=False,cookies=cookies)

我将它与GET一起使用,并且它起作用了

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43156549

复制
相关文章

相似问题

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