- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
美好的一天。
我正在尝试与 Facebook 集成。所以我需要用户使用 facebook 登录我的网站,然后我需要获取他们的信息,例如好友列表等。
我执行以下操作:
@RequestMapping("/login")
public void facebookLogin(HttpServletRequest request, HttpServletResponse response,String code) throws Exception
{
// ModelAndView model = new ModelAndView();
// Facebook did not accept this user yet...
if(code==null||code.equalsIgnoreCase(""))
{
String facebook_url = "https://www.facebook.com/dialog/oauth?";
// facebook_url+="client_id="+ Settings.getStringSetting("app_id");
facebook_url+="client_id="+ "12849129...344";
facebook_url+="&scope=publish_actions,friends_hometown,friends_status,friends_birthday";
facebook_url+="&redirect_uri="+domain+ "/facebook/login";
facebook_url+="&state="+ "DDFFRREEiiFF";
response.setStatus(response.SC_MOVED_TEMPORARILY);
response.setHeader("Location", facebook_url);
}
// Facebook accepted our user
else
{
// Getting token to use facebook API
String getTokenURL = "https://graph.facebook.com/oauth/access_token?"
+"client_id="+ "128491....344"
+"&redirect_uri="+domain+ "/facebook/login"
+"&code="+code
+"&scope=publish_actions,friends_hometown,friends_status,friends_birthday"
+"&client_secret="+"fc160e2ab...235254240c";
//friends_hometown
String result = HTTPClient.sendHTTPRequestWithMethod(getTokenURL, "GET");
String access_token = extractParams(result).get("access_token");
// Get user...
String get_user_url = "https://graph.facebook.com/me?access_token="+access_token;
String user_str = HTTPClient.sendHTTPSRequestWithMethod(get_user_url,"GET");
JSONProcessor proc = new JSONProcessor(user_str);
System.out.println(proc.getStructure());
HashMap<String,Object> user = proc.getStructure();
String facebook_id = proc.getStructure().get("id").toString();
DBRecord rec = dbProc.getUserByFacebookId(facebook_id);
User u = new User();
u.setValue("facebook_access_token",access_token);
u.setValue("facebook_id",facebook_id);
u.setValue("first_name",user.get("first_name"));
u.setValue("last_name",user.get("last_name"));
u.setValue("facebook_name",user.get("name"));
u.setValue("birthday",user.get("birthday"));
u.setValue("facebook_code",code);
u.setValue("facebook_link",user.get("link"));
u.setValue("gender",user.get("gender"));
u.setValue("facebook_photo_url","https://graph.facebook.com/"+user.get("id")+"/picture?type=small");
if(rec==null)
{
Long user_id = u.createInDB(dbProc);
u.setValue("id",user_id);
}
else
{
u.setValue("id",rec.getID());
u.saveToDB(dbProc);
}
setCookie(response,"facebook_code",code,86400000);
// return new ModelAndView("/user/main_choose");
response.setStatus(response.SC_MOVED_TEMPORARILY);
response.setHeader("Location", "/user/main_choose");
}
}
所以我希望用户首先进入/login 而不使用代码参数,然后将他们重定向到 https://www.facebook.com/dialog/oauth
然后他们将登录 facebook,它应该将他们重定向回/login ,但添加“code”参数,然后我可以使用 https://graph.facebook.com/oauth/access_token
调用该“code”参数用于检索当前用户的access_token。有了这个 token 我就能做我需要做的一切。
因此,当我尝试从我的帐户(开发人员帐户)登录时 - 一切顺利。但是当我尝试从其他帐户(例如我 friend 的)执行此操作时 - 我看到 Facebook 登录表单,但重定向后我仍然没有“代码”参数。
为什么?这是我的应用程序配置:站点网址:http://109.173.122.47/
Canvas 网址:
http://109.173.122.47/
Sabdbox 模式:开启
最佳答案
沙盒模式
是否已启用
?
如果沙盒模式
启用
,您是唯一授权使用该应用程序的人,
关于java - Facebook access_token 检索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16457457/
auth0版本:9.3.3 我正在开发一个使用 Google Identity API 的 Chrome 扩展程序。当我的扩展程序在用户已经获得 Google 授权的情况下加载时,因此通过以下方式再次
我正在尝试确定存储和访问使用 iOS 应用程序的访问 token 的最佳方式。 我正在熟悉核心数据,虽然这已证明对应用程序数据的某些部分有益,但我不确定核心数据是否最适合我需要的 token 。 大多
我正在尝试使用 Facebook 最近发布的新 Graph API,但我似乎无法让它正常工作。 我已经完成了这些步骤,在调用/authorize 之后,我收到了一个 access_token: acc
我刚刚对 Android Firebase 应用程序进行了渗透测试,测试人员在共享首选项中找到了一个文件 com.google.Firebase.auth.api.xml。它包含 access_tok
我正在使用 tymondesigns/jwt-auth在我的 Laravel 应用程序中打包以进行身份验证。我的 AuthController 看起来像这样: middleware('jwt',
如果有人正在寻找如何更改 FOSOAuthServerBundle 的 access_token 生命周期(expires_in),那么这里是如何做到的: fos_oauth_server:
所以,我在设置 IdentityServer4 时遇到了承载身份验证的问题。基本上,我无法调用我的 API 资源并收到 401 错误。当我使用 access_token 添加授权 header 时。我
我在我的应用程序中使用以下代码来检查是否提供了某些 header 。该代码在本地主机中工作正常,但在应用程序部署到服务器时则不然。基本上我想检查请求中是否存在 header 。在服务器上,我不断收到无
我有一个问题,我正在尝试使用从 获取的 token 在页面上发布 https://graph.facebook.com/oauth/access_token? client_id=YOUR_APP_I
一个小问题。目前我正在使用 Spotify Webapi,我想知道是否有一个 Web API 端点来检查 access_token 是否过期?目前我正在使用 GET https://api.spoti
美好的一天。 我正在尝试与 Facebook 集成。所以我需要用户使用 facebook 登录我的网站,然后我需要获取他们的信息,例如好友列表等。 我执行以下操作: @RequestMapping("
我正在为网络应用程序构建 SSO 设置。我可以通过 https://www.googleapis.com/oauth2/v1/userinfo 登录已知用户并创建新的未知用户. 我收到这样的回复: {
我遇到了以下问题: 我正在尝试将 Instagram 应用到我的网站中。但是,我停留在需要获取访问 token 的步骤上。 api 的文档说我需要像这样请求它: curl \-F 'client_id
我正在开发一个移动网络应用程序,它将访问 Google Books API 并允许用户将书籍添加到他们的“收藏夹”书架。这是我第一次使用需要谷歌授权的 API。 我需要发送授权请求来修改私有(priv
我在尝试为用户获取访问 token 时遇到此错误。这与 facebook 应用程序的授权过程有关。产生该异常的代码如下: OAuthClientRequest oAuthRequest = OAuth
我正在使用 Facebook 长期 token (2 个月),但 FB 开始变得不确定,有时会给我这个返回 { "error": { "message": "Cannot acces
在论坛/网络上搜索了几天之后,我仍然无法解决这个问题并使用 SCORE graph api { "error": { "message": "(#15) This method must be
我正在为一个事件建立一个小网站。这个想法是将 Facebook 事件的参加者添加到此网站。问题是主服务需要access_token。我不想让用户登录应用程序,我只想使用应用程序access_token
这是从 facebook-sdk 示例中获取 access_token 的一部分。在我得到代码之后,我完全按照下面的例子来做 if self.request.get("code"):
我正在使用 IdentityServer4,我想将计算字段添加到 access_token/id_token。 此类字段的示例可以是用户的 IP(或 token 绑定(bind)哈希), token
我是一名优秀的程序员,十分优秀!