我正在尝试建立一个站点,以便用户可以在 HTML 表单中输入评论,然后在按下提交按钮后,该评论将被放置在该人的墙上。
我已经设置了 publish_stream 权限,并且可以使用此处显示的方法轻松发布到流:示例
但是,如果您使用 HTML 表单并按下提交,页面将重新加载并完成令牌获取过程。这会导致一些重新路由,从而导致 $_REQUEST 中的数据丢失。
有没有办法做到这一点?
谢谢。
我正在尝试建立一个站点,以便用户可以在 HTML 表单中输入评论,然后在按下提交按钮后,该评论将被放置在该人的墙上。
我已经设置了 publish_stream 权限,并且可以使用此处显示的方法轻松发布到流:示例
但是,如果您使用 HTML 表单并按下提交,页面将重新加载并完成令牌获取过程。这会导致一些重新路由,从而导致 $_REQUEST 中的数据丢失。
有没有办法做到这一点?
谢谢。
是的,亲爱的,您可以使用 java 脚本来使用它。
<textarea id="status" cols="50" rows="5">在此处输入您的状态,然后单击“使用旧版 Api 调用设置状态”</textarea> <br /> <a href="#" onClick="setStatus(); return false;">使用JSDK调用设置状态</a> <script type="text/javascript"> window.fbAsyncInit = function() { FB.init({appId: '你的APPI ID', status: true, cookie: true, xfbml: true}); /* 所有注册的事件 */ FB.Event.subscribe('auth.login', function(response) { // 对响应做一些事情 //登录(); }); FB.Event.subscribe('auth.logout', function(response) { // 对响应做一些事情 //登出(); }); FB.getLoginStatus(函数(响应){ 如果(响应。会话){ // 登录并连接的用户,你认识的人 // 登录(); } }); }; (功能() { var e = document.createElement('script'); e.type = '文本/javascript'; e.src = document.location.protocol + '//connect.facebook.net/en_US/all.js'; e.async = true; document.getElementById('fb-root').appendChild(e); }()); 函数 setStatus(){ status1 = document.getElementById('status').value; FB.api( { 方法:'status.set', 状态:状态1 }, 功能(响应){ 如果(响应 == 0){ alert('您的 facebook 状态未更新。授予状态更新权限。'); } 别的{ alert('您的脸书状态已更新'); } } ); } </脚本>