使用Xbox Web API登录

时间:2020-01-20 20:44:21

标签: xbox-live

我需要让用户在我的应用程序中使用他们的Xbox登录。这是我的代码段:

 base_url = 'https://login.live.com/oauth20_authorize.srf?'
    qs = unquote(urlencode({
        'client_id': 'My client Id',
        'redirect_uri': 'https://localhost:44331',
        'response_type': 'token',
        'display': 'touch',
        'scope': 'service::user.auth.xboxlive.com::MBI_SSL',
        'locale': 'en',
    }))

我的问题是我不确定从哪里获取客户ID以及如何添加该范围。我已经在Azure应用注册中注册了添加项,并获得了我的客户端ID,并添加了重定向网址,但仍然无法正常工作。

2 个答案:

答案 0 :(得分:0)

client_id 应该来自 Azure 仪表板中的应用程序

  • 转到 portal.azure.com 并点击“App Registrations”。

  • 如果您在目录中,您可能必须点击“查看来自个人帐户的所有应用程序”

  • 选择您的应用程序,点击“新注册”创建一个

  • 如果尚未选择,请转到左侧工具栏上的“概览”

  • 从“应用程序(客户端)ID”字段中获取 client_id
    您可能还对以下内容感兴趣:

    • client_secretclient_secret_id:来自“证书和秘密”

    • 配置允许的 return_url:“身份验证”、“平台配置”、“Web”

    • tenant_id:在“Azure Active Directory”下方(在左上角的“汉堡菜单”访问的最左侧工具栏中找到),点击“概览”,然后在“租户信息”下找到它


有关展示 Xbox Live 授权所需的最低限度 /oauth20_authorize.srf 的小型演示,请参阅 printf 的 URL 和第一个 curl 调用gamertag_to_uuid.sh

答案 1 :(得分:0)

我对此进行了大量研究,并发现 Xbox live 范围是已在每个客户端中获得授权的服务范围。但服务范围在 response_type 令牌中不起作用。它必须设置为 response_type: 'code'

相关问题