我已经创建了一个应用程序与用户的asp.net mvc api,以下tutorial。 而且一切都很好。asp.net mvc API外部登录
现在我试图添加外部登录(实际上只是Facebook)。 我一直在寻找如何做到这一点,我发现了一个答案here。
所以我配置了Startup.Auth.cs
配置了Facebook AppId/Secret。
我做出GET api/Account/ExternalLogins?returnUrl=%2F&generateState=true
打个电话,然后我重定向到指定的URL。然后我回到像http://localhost:49728/#access_token= ... &token_type=bearer&expires_in=2592000&state= ...
这里是我的问题。接下来我应该怎么做才能在网站上注册用户。
Web应用程序完成后,会有一个移动本机应用程序。
编辑
我改变了返回URL,在那里我可以问,并保存用户名。 到目前为止不错。
后,我保存新的用户,我需要登录,所以我想这样的:
var state = new RegExp('[\&&]state=([^&#]*)').exec(window.location.href);
$.get(baseurl + 'api/Account/ExternalLogin?provider=Facebook&response_type=token&client_id=self&redirect_uri=' + encodeURIComponent(baseurl) + '&state=' + state[1], function (data, status) {
console.log(data);
});
,但我得到的400错误请求错误。
我现在的问题是我该如何解决这个问题,并进行登录?
是的,差不多完成了,现在的问题是,当我尝试再次调用外部登录,GET/api/Account/ExternalLogin?provider = Facebook&response_type = token&client_id = self&redirect_uri = http%3A%2F%2Flocalhost%3A15359%2F&state = QotufgXRptkAfJvcthIOWBnGZydgVkZWsx8YrQepeDk1'我得到400错误的错误请求。哪里不对? – BrunoRamalho
我不确定你的问题是什么,我需要更多的代码和错误日志,如果你尝试使用邮递员,并且看到错误或调试以查看错误,那将会更有益处。然而,有些东西我想你试着让我知道它是否有效。我将编辑我的答案以添加更改。 – RaniDevpr
它现在有效,忘记设置令牌 – BrunoRamalho