【发布时间】:2012-03-12 17:01:01
【问题描述】:
我想编写一个 java(spring 控制器),当用户取消对我的应用程序的授权时,我可以在其中接收 facebook 发送的回调 url。
我已在我的应用程序中指定了正确的 URL,并已阅读 fb 上提供的文档。 但我不知道如何编写控制器文件。 这个我试过了。
@Controller
public class RemoveAppController {
private static Logger log = LoggerFactory.getLogger(RemoveAppController.class);
@RequestMapping(value="/deauthorizehandler.htm", method=RequestMethod.POST)
public void removeApp(HttpServletRequest request) throws Exception {
log.info("DeAuthorize Callback getting successfully");
}
}
我是不是哪里错了? 因为这个控制器没有被执行。 我在我的应用程序中指定的 URL 是 http://localhost:8080/server/deauthorizehandler.html,我已经映射了它。服务器运行良好。 请帮忙。
【问题讨论】:
-
我认为 .htm 和 .html 之间的区别是一个错字,对吧?
-
是的...这东西在代码中是正确的。这实际上是html
-
您能否详细说明当您从内部和外部 IP 向控制器 URL 发出 POST 请求时服务器和客户端会发生什么?另外您使用的是哪个版本的 Spring?
-
如果您直接访问该 url,那么它将是一个 GET 请求,并且在您的控制器中,您没有任何 GET 方法的映射。您只有 POST 方法的映射。您可以尝试将其更改为 GET 并检查。另外请检查 spring 上下文 xml,它负责扫描包中的注释。
-
我将 POST 替换为 GET,然后我从浏览器中检查。在浏览器中,我的 url 是 localhost:8080/server/deauthorizehandler.html 然后在控制台中,我的方法被成功记录,即 DeAuthorize Callback 成功......
标签: java facebook spring-mvc facebook-java-sdk