Uber Rides / Python - 如何配置Oauth w。阿帕奇

时间:2016-06-28 03:28:49

标签: python apache oauth applescript uber-api

我是新手,所以我提前道歉。我实际上是AppleScript开发人员,只想将Uber Rides.py用于脚本,而我几乎不了解Python。 (只是寻找一种“简单”的方式,使用Homebridge和Siri在一个更复杂的脚本中启动Uber)。

我已经构建了py app但我不知道在使用authorization_code_grant.py脚本后获取Oauth代码。

我将是这个应用程序的唯一用户(它仅用于在家测试)所以我并不担心Auth,但我知道这是一个强制性的超级过程。应用程序没有前端(它只是脚本运行并通过Homebridge响应Siri请求)并且没有用户进行身份验证的网页。用户将是我自己所以我只需要一种“获取”Oauth代码的方法,然后我将在Applescript中将其用作CLI / Python命令的一部分。

我有两个主要问题:

  1. 一旦用户登录并点击了授权按钮,有人可以一步一步地告诉我如何获取Uber发送的代码吗?我似乎明白我应该配置我的Apache服务器“接收”代码,但我不知道如何? (如果它有助于我设置一个Horuku帐户,但我不确定我需要这个,考虑到Apache在我的Mac上运行,我只是不知道如何配置它...)

  2. 当我尝试使用authorization_code py(URI设置为http://localhost:7000但据我所知,目前没有任何东西在端口7000上运行,因此问题1)它会在下面生成错误< / p>

  3. 错误:

    >mediacenter$ python example/authorization_code_grant.py
    Login and grant access by going to:
    login.uber.com/oauth/authorize?scope=profile+request+history&state=MgnYJ18l7DxqbSYxkSfjrbGCL8BQAMg0&redirect_uri=https%3A%2F%2Foauthswift.herokuapp.com%2Fcallback%2Fsiriuber&response_type=code&client_id=3Wk7zJbSLVCFCQ69UZvQJCZ_aBfHJBDu
    
    >Copy the URL you are redirected to and paste here: 
    oauth-callback/siriuber?state=MgnYJ18l7DxqbSYxkSfjrbGCL8BQAMg0&code=dK1ETADCaHcZCAbXnYKOSapetgexgj
    Failed to request access token: UNAUTHORIZED. 
    [ErrorDetails: 401 UNAUTHORIZED invalid_client] 
    Traceback (most recent call last):
    File "example/authorization_code_grant.py", line 150, in 
    hello_user(api_client)
    File "example/authorization_code_grant.py", line 122, in hello_user
    response = api_client.get_user_profile()
    AttributeError: 'NoneType' object has no attribute 'get_user_profile'
    

    我希望它有道理。我知道我应该花一些时间来学习一门“真正的”语言,但AS(大部分时间)都是完美地将不同的东西快速组合在一起并做我想做的事情!

    提前致谢, JC

1 个答案:

答案 0 :(得分:0)

来自GitHub的同一个人。在挖掘之后,我想出了this

基本上,您的example / config.yaml或您的应用信息中心中可能存在配置问题。确保您正确配置了这两个。示例/ config.yaml设置应该与this完全相同,并替换三个值。确保您的重定向网址与&#34;授权&#34;下的信息中心中的重定向网址相同。重定向网址。

您是否从源代码安装?就像你从GitHub回购中克隆它一样吗?或者您是否使用pip安装它?

希望这会有所帮助。