python - 如何从 azurewebsites 访问 API

Posted

技术标签:

【中文标题】python - 如何从 azurewebsites 访问 API【英文标题】:python - how to access an API from azurewebsites 【发布时间】:2021-07-08 10:40:59 【问题描述】:

我正在尝试访问 azurewebsites.net 上的 API。我是 Azure 平台的新手,我不知道是否要通过我的代码访问此 API,是否需要在 Azure 平台中进行任何其他配置?我尝试了正常的请求方法来获取 python 中的 API 数据,但它引发了身份验证错误。我需要在 Azure 中注册我的应用吗?

这是我正在尝试的:

r = requests.get("url",
             headers=
                 "Accept": "application/json",
             cookies=,
             auth=('email', 'pass'),
             )

有人可以指导我完成这个吗?谢谢。

【问题讨论】:

建议在postman中调用接口成功后再编码。 【参考方案1】:

因为我不知道你的天蓝色网站做了哪些设置,所以只能给你一个通用的解决方案。

尝试步骤:

    首先,确保你可以正常访问你的api站点。可以测试其他接口,保证api站点正常运行。

    网站正常运行时,检查门户是否进行了aad设置。

    如果不行,请使用postman测试接口,确保在postman中可以正常访问,然后使用代码通过检查url、header等参数进行测试。

    ?如果是,请获取Beartoken并在访问界面时添加。我看到你使用的是email和pass,那么你可以使用ropc flow获取Beartoken。然后你可以在访问每个界面时带上这个验证。

相关帖子:

Is there a way to improve the performance of MSAL-browser js login?

【讨论】:

@Jaon Pan,谢谢!我可以在普通浏览器中访问 API,也可以大摇大摆地访问 API,而不会出现任何身份验证错误。对于第 2 步,我还没有注册应用程序。我需要这样做才能通过python访问它吗?如果是,我应该注意的任何其他配置/设置? @sleepyPanda 你能为我创建一个示例 api,让我在我的 lcoal 中测试。 @sleepyPanda Okey,请按 F12,检查 http 请求。 @sleepyPanda docs.microsoft.com/en-us/azure/active-directory/develop/… @sleepyPanda 试试看这篇文章,当你使用这个beartoken时,不再需要在header中使用cookies的复杂参数,直接使用beartoken进行访问。

以上是关于python - 如何从 azurewebsites 访问 API的主要内容,如果未能解决你的问题,请参考以下文章

Visual Studio 无法创建安全连接 azurewebsites:4020 身份验证失败

net.core 和 angular4 应用程序的 Cors 问题 - 适用于 azurewebsites.net 域而不是自定义

防止 AddRedirectToWwwPermanent() 在 ASP.NET Core 2.1 中将“www”添加到 *.azurewebsites.net 的前面

加载资源失败:http://website.azurewebsites.net/signalr/hubs 服务器响应状态为 404(未找到)

Auth0 Blazor 访问以从源“https://xx.azurewebsites.net”获取“https://dev-xx.us.auth0.com/oauth/token”已被 CORS 策

修改Azure Website默认时区