python3.x - python连oanda的模拟交易api时现HTTP Error 401: UNAUTHORIZED?

查看:466
本文介绍了python3.x - python连oanda的模拟交易api时现HTTP Error 401: UNAUTHORIZED?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

用python3连oanda的模拟交易api时现HTTP Error 401: UNAUTHORIZED,新手求教:
import urllib.parse
import urllib.request

url = 'https://api-fxpractice.oanda....'
access_token = 'a554db3a48ac8180a6996a5547ba1663-ac5947e64456cc5842a34f4ce05e4380'
account_id = 'cawa11'
values = {'accountId':account_id}
headers = {'Authorization':'Bearer'+access_token}

data = urllib.parse.urlencode(values).encode("utf-8")

req = urllib.request.Request(url, data, headers)
response = urllib.request.urlopen(req)
the_page = response.read()

报错:
Traceback (most recent call last):
File "C:UserslenovoDesktopbb.py", line 36, in <module>

response = urllib.request.urlopen(req)

File "C:Python34liburllibrequest.py", line 161, in urlopen

return opener.open(url, data, timeout)

File "C:Python34liburllibrequest.py", line 469, in open

response = meth(req, response)

File "C:Python34liburllibrequest.py", line 579, in http_response

'http', request, response, code, msg, hdrs)

File "C:Python34liburllibrequest.py", line 507, in error

return self._call_chain(*args)

File "C:Python34liburllibrequest.py", line 441, in _call_chain

result = func(*args)

File "C:Python34liburllibrequest.py", line 587, in http_error_default

raise HTTPError(req.full_url, code, msg, hdrs, fp)

urllib.error.HTTPError: HTTP Error 401: UNAUTHORIZED

解决方案

#Bearer后面少了一个空格
headers = {'Authorization':'Bearer '+access_token}

这篇关于python3.x - python连oanda的模拟交易api时现HTTP Error 401: UNAUTHORIZED?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆