gpt4 book ai didi

xamarin.forms - 如何修复 xamarin 表单中用于在 Android 应用程序中访问 Web 资源的 google 身份验证中的 403 错误

转载 作者:行者123 更新时间:2023-12-04 18:34:01 31 4
gpt4 key购买 nike

提前致谢......

我在通过 google 身份验证使用 azure cloud 连接到我的应用程序时遇到此错误

“403。这是一个错误。错误:不允许 _useragent 此用户代理不允许向 google 发出 oauth 授权请求,因为根据我们的政策,它被归类为嵌入式用户代理,只允许浏览器进行授权向 google 请求。我们为 native 应用程序提供了几个库和示例,以在浏览器中执行授权请求。”

如何修复这个错误......

最佳答案

这是从去年开始发生的,因为 Google 的安全政策发生了变化。解决方法是使用 Xamarin.Auth 并在 native 代码中使用拦截器来捕获身份验证过程。以下链接中提供了一个很好的示例 Xamarin Authentication

class ActivityCustomUrlSchemeInterceptor : Activity
{
protected override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);

/* global::Android.Net.Uri uri_android = Intent.Data;

//#if DEBUG
// System.Text.StringBuilder sb = new System.Text.StringBuilder();
// sb.AppendLine("ActivityCustomUrlSchemeInterceptor.OnCreate()");
// sb.Append(" uri_android = ").AppendLine(uri_android.ToString());
// System.Diagnostics.Debug.WriteLine(sb.ToString());
//#endif

// Convert iOS NSUrl to C#/netxf/BCL System.Uri - common API
Uri uri_netfx = new Uri(uri_android.ToString());

// load redirect_url Page
AuthenticationState.Authenticator.OnPageLoading(uri_netfx);*/

var uri = new Uri(Intent.Data.ToString());

// Load redirectUrl page
AuthenticationState.Authenticator.OnPageLoading(uri);

this.Finish();

return;
}
}

关于xamarin.forms - 如何修复 xamarin 表单中用于在 Android 应用程序中访问 Web 资源的 google 身份验证中的 403 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43997756/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com