Azure ad b2c 未处理的异常呈现组件:无法构造';URL';:无效的URL

Azure ad b2c 未处理的异常呈现组件:无法构造';URL';:无效的URL,azure-ad-b2c,blazor-webassembly,Azure Ad B2c,Blazor Webassembly,我一行一行地跟着。它教导如何生成blazor wasm托管的应用程序,其中包含所有代码,以便通过Azure B2C进行身份验证。我所要做的就是在正确的位置替换正确的值 dotnet新blazorwasm-au IndividualB2C--aad-b2c-instance“{aad b2c instance}”--api客户端id“{SERVER-api-APP-client-id}”--APP-uri“{SERVER-api-APP-id-uri}”--客户端id“{client-APP-cl

我一行一行地跟着。它教导如何生成blazor wasm托管的应用程序,其中包含所有代码,以便通过Azure B2C进行身份验证。我所要做的就是在正确的位置替换正确的值

dotnet新blazorwasm-au IndividualB2C--aad-b2c-instance“{aad b2c instance}”--api客户端id“{SERVER-api-APP-client-id}”--APP-uri“{SERVER-api-APP-id-uri}”--客户端id“{client-APP-client-id}”--默认范围“{default scope}”--域“{TENANT-domain}”--ho-o{APP APP NAME}-ssp{SIGN-UP或SIGN-IN POLICY}

不幸的是,当我运行它时,我得到了以下错误:

很难说问题出在哪里。我在谷歌上搜索了这个错误,但找不到关于这个问题的任何文档

谢谢你的帮助

编辑 下面是我用来创建Blazor应用程序的脚本


dotnet新blazorwasm-au IndividualB2C--aad-b2c-instance“testb2c.onmicrosoft.com”--api客户端id“3b113bda-55d5-47eb-9d8c-5e44375f1341”--应用程序id uri”https://testb2c.onmicrosoft.com/testapi--客户端id“3b9fd635-a87f-4899-ad04-9a73fc6f4e21”--默认作用域“api.read”--域“testb2c.onmicrosoft.com”-ho-o BlazorCmdLine-ssp“B2C\u 1\u注册”

有两个真正的问题与缺乏关注有关

  • 我对{AAD B2C INSTANCE}和{TENANT DOMAIN}使用了相同的值
    testb2c.onmicrosoft.com
    • {AAD B2C INSTANCE}实例
      应该是
      https://testb2c.b2clogin.com/
    • {TENANT DOMAIN}DOMAIN
      应该是
      testb2c.onmicrosoft.com
  • 我忘了在{AAD B2C INSTANCE}实例的末尾添加一个正斜杠,所以我得到了
    “Authority”:“testb2c.onmicrosoft.comtestb2c.onmicrosoft.com/B2C_1_SignUpIn”

  • 谢谢你,@只有班诺,@Carl Zhao和@Allen Wu

    有两个真正的问题与注意力不足有关

  • 我对{AAD B2C INSTANCE}和{TENANT DOMAIN}使用了相同的值
    testb2c.onmicrosoft.com
    • {AAD B2C INSTANCE}实例
      应该是
      https://testb2c.b2clogin.com/
    • {TENANT DOMAIN}DOMAIN
      应该是
      testb2c.onmicrosoft.com
  • 我忘了在{AAD B2C INSTANCE}实例的末尾添加一个正斜杠,所以我得到了
    “Authority”:“testb2c.onmicrosoft.comtestb2c.onmicrosoft.com/B2C_1_SignUpIn”

  • 谢谢,@just the benno、@Carl Zhao和@Allen Wu

    向任何发现自己处于这种情况的人表示感谢-与其检查您的值并再次运行命令,不如打开appsettings.json文件并检查“AzureAdB2C.Authority”值。它应该是一个有效的URL,格式为:“{AAD B2C INSTANCE}/{TENANT DOMAIN}”/{注册或登录策略}”

    例如: "https://testb2c.b2clogin.com/testb2c.onmicrosoft.com/B2C_1_SignUpSignIn"


    来源:

    对于发现自己处于这种情况的任何人-与其检查您的值并再次运行命令,不如打开appsettings.json文件并检查“AzureAdB2C.Authority”值。它应该是一个有效的URL,格式为:“{AAD B2C INSTANCE}/{TENANT DOMAIN}/{SIGN up或SIGN-in POLICY}”

    例如: "https://testb2c.b2clogin.com/testb2c.onmicrosoft.com/B2C_1_SignUpSignIn"


    来源:

    这只是猜测,而不是答案。也许你的变量中有一些“无效字符”,比如空格?当身份验证服务试图为请求构造重定向URL时,它会产生错误?你的URL应该如下所示:
    https://{tenant}.onmicrosoft.com/{SERVER-API-APP-ID-URI}/作用域名称
    @CarlZhao我刚刚在问题中发布了我的脚本。脚本的哪一部分应该是您在评论中描述的方式?如果您运行
    dotnet new blazorwasm-au IndividualB2C-ho-o BlazorCmdLine
    ,会发生什么情况?@AllenWu运行此命令只会生成占位符,从而可以准确地看到期望值。谢谢你,所以muchIt只是猜测而不是答案。也许你的变量中有一些“无效字符”,比如空格?当身份验证服务试图为请求构造重定向URL?时,它会产生错误?你的URL应该如下所示:
    https://{tenant}.onmicrosoft.com/{SERVER-API-APP-ID-URI}/作用域名称
    @CarlZhao我刚刚在问题中发布了我的脚本。脚本的哪一部分应该是您在评论中描述的方式?如果您运行
    dotnet new blazorwasm-au IndividualB2C-ho-o BlazorCmdLine
    ,会发生什么情况?@AllenWu运行此命令只会生成占位符,从而可以准确地看到期待。非常感谢你。你忘了#2。哈哈哈。只是开玩笑,伙计。这让我花了一个多小时,我永远不会猜到。谢谢!你忘了#2。哈哈哈。只是开玩笑,伙计。这让我花了一个多小时,我永远不会猜到。谢谢!