我正在为我的Azure功能应用程序使用Facebook身份验证,如果我导航到浏览器中的某个功能,它可以正常工作。我想从应用程序中调用我的函数,但不确定如何执行身份验证。
目前我正在尝试使用Facebook客户端,这会返回一个access_token,然后我转发到我的功能应用程序中的“.auth / login / facebook / callback”功能。不幸的是,就我所知,通过GET执行此操作会返回带有JavaScript的HTML,并通过POST重定向回到Facebook。
我真正需要的是由azure函数AppServiceAuthSession创建的cookie,我相信我可以使用它来调用函数。
编辑:我认为我不能像上面所说的那样使用cookie,所以我需要正确验证。
尼克。
答案 0 :(得分:4)
在使用Facebook Javascript SDK时,我能够将令牌传递给功能应用程序(我没有运气好的C#) - 也许这会让你朝着正确的方向前进。
客户:
accessToken
。accessToken
换成“应用服务令牌”。它通过使用内容https://{app}.azurewebsites.net/.auth/login/facebook
向{ "access_token" : "{token from Facebook}" }
发送POST来完成此操作。这将返回authenticationToken
。authenticationToken
的标头中使用x-zumo-auth
。使用该标题向您的功能应用程序发出所有请求。在功能应用程序中,您应该将当前的Principal设置为登录用户。