当前位置: 首页 > 知识库问答 >
问题:

没有使用Python请求的确认代码的OAuth2

谭浩皛
2023-03-14

我正试图从payever的API获得回复

我仅使用我的client\u id和client\u secret获得授权令牌,问题是当我尝试按照文档建议传递参数时,我得到以下错误响应:

u'{"error":"access_denied","error_description":"OAuth2 authentication required"}'

我假设这是因为我没有经历整个OAuth2流程,问题是要符合这一点,我需要一个确认码,我从来不需要,因为我可以只使用我的client_id和client_secret获取访问令牌。

有什么办法吗?我环顾了四周,甚至试图跳过一些关于requests\u oauthlib的步骤:

import requests_oauthlib

token = get_token(client_id, client_secret)
oauth = requests_oauthlib.OAuth2Session(client_id, redirect_uri=redirect_uri, scope=scope)
oauth.token = access_token
oauth.access_token = True

payments_url = 'https://mein.payever.de/api/payment'

rr = oauth.get(payments_url)

但是没有运气

u'{"error":"invalid_grant","error_description":"The access token provided is invalid."}'

编辑:

我用subprocess.check_output('curl-......')工作得很好

共有1个答案

范宏大
2023-03-14

通过查看Payever API,我不会使用requests_oauthlib,而是使用纯请求。API似乎非常简单,因此不需要Oautlib。

首先,我可以在终端中直接使用Curl访问资源,或者在Python中使用纯请求库。API referece显示了以下获取令牌的方法

curl -k https://mein.payever.de/oauth/v2/token \
-d client_id="{client_id}" \
-d client_secret="{client_secret}" \ 
-d grant_type="http://www.payever.de/api/payment" \ 
-d scope="API_CREATE_PAYMENT"

JSON响应包含access_令牌,可以使用参考:Payever API参考中解释的Curl命令访问资源

 类似资料:
  • 问题内容: 简短,简单的介绍了出色的Python 请求模块。 我似乎在文档中找不到变量“代理”应包含的内容。当我发送带有标准“ IP:PORT”值的字典时,它拒绝要求2个值。所以,我猜(因为文档中似乎没有涵盖),第一个值是ip,第二个值是端口? 文档只提到了这一点: 代理–(可选)字典到代理URL的映射协议。 所以我尝试了这个……我该怎么办? 在将它们放入字典之前,我应该将它们转换为某种类型吗?

  • 问题内容: 我尝试了python 请求库文档中提供的示例。 使用,我得到了响应代码,但是我想获得所请求的每个页面的内容。例如,这不起作用: 问题答案: 注意 下面的答案是不适用于请求v0.13.0 +。编写此问题后,异步功能已移至。但是,你可以将其替换为下面的内容,它应该可以工作。 我已经留下了这个答案,以反映原始问题,即有关使用请求的问题。 要异步执行多个任务,你必须: 为每个对象定义一个函数(

  • 假设您想对某个网站执行https请求,但中间有一个代理。 上述代理不查看请求,只是在用户代理使用HTTP连接方法后将所有流量中继到实际的HTTPS服务器(如中所示http://www.web-cache.com/Writings/Internet-Drafts/draft-luotonen-web-proxy-tunneling-01.txt)。 现在我的问题是:在代理打开到目标Web服务器的SS

  • 本文向大家介绍spring boot中使用http请求的示例代码,包括了spring boot中使用http请求的示例代码的使用技巧和注意事项,需要的朋友参考一下 因为项目需求,需要两个系统之间进行通信,经过一番调研,决定使用http请求。 服务端没有什么好说的,本来就是使用web 页面进行访问的,所以spring boot启动后,controller层的接口就自动暴露出来了,客户端通过调用对应的

  • 问题内容: 它是否正确?有没有更好的方法来构造它?这会覆盖我所有的基地吗? 问题答案: 看一下Requests 异常文档。简而言之: 如果出现网络问题(例如DNS故障,连接被拒绝等),请求将引发异常。 如果发生罕见的无效HTTP响应,则请求将引发HTTPError异常。 如果请求超时,Timeout则会引发异常。 如果请求超过配置的最大重定向数,则会引发异常。 请求显式引发的所有异常都继承自。 要

  • 问题内容: 我已经编写了一个函数,希望在提交表单之前显示确认消息。我应该如何添加我的条件。下面是我的代码。 问题答案: 解决方案是使用ajax属性。 beforeSend是发送之前的请求前回调函数.beforeSend函数中返回false将取消请求。 AJAX