Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/262.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在Facebook上共享后,如何授予用户从网站下载文件的权限?_Javascript_Php_Jquery_Facebook Graph Api_Facebook Javascript Sdk - Fatal编程技术网

Javascript 在Facebook上共享后,如何授予用户从网站下载文件的权限?

Javascript 在Facebook上共享后,如何授予用户从网站下载文件的权限?,javascript,php,jquery,facebook-graph-api,facebook-javascript-sdk,Javascript,Php,Jquery,Facebook Graph Api,Facebook Javascript Sdk,我希望当用户尝试从我的网站下载任何pdf/doc/zip文件时,首先用户将在他/她的Facebook墙上共享有关我的网站的内容,成功共享后,将启用下载链接 对于这个关于堆栈溢出的问题,我有一个解决方案,但这不是100%正确的。因为此解决方案可以在Facebook上共享,但共享后不会显示下载链接。下面的链接是堆栈溢出答案的解决方案 Facebook最近改变了其共享对话框的行为。在此之前,对话框发送了一个响应,其中包括成功共享内容时的post id,而在不需要对用户进行身份验证的情况下没有发送响应

我希望当用户尝试从我的网站下载任何pdf/doc/zip文件时,首先用户将在他/她的Facebook墙上共享有关我的网站的内容,成功共享后,将启用下载链接

对于这个关于堆栈溢出的问题,我有一个解决方案,但这不是100%正确的。因为此解决方案可以在Facebook上共享,但共享后不会显示下载链接。下面的链接是堆栈溢出答案的解决方案


Facebook最近改变了其共享对话框的行为。在此之前,对话框发送了一个响应,其中包括成功共享内容时的post id,而在不需要对用户进行身份验证的情况下没有发送响应

但是,当前当用户未连接到您的应用程序且未授予您的应用程序的发布操作权限时,Facebooks共享对话框不会将帖子ID与响应一起发送。

仅当用户使用Facebook登录到您的应用程序并已授予发布操作时可用。如果存在,则这是已发布的开放图故事的ID

不管怎样,如果你想做这件事,你必须经历整个混乱的世界,这可能是不值得的

另外请求
publish\u操作
权限将要求您的应用程序被删除。由于facebook不允许任何类型的选通,因此
publish\u操作
权限将不会获得批准。目前无法实现此功能。

(感谢您的提示)


这一切都可以归结为几个原则:

  • 提供好的内容,不要让它依赖于用户交互
  • 不要强迫用户与您的应用程序进行社交互动。如果他们愿意,他们会按照自己的行为行事
  • 至少Javascript SDK是一个难以正确实现的难题。尽可能避免。使用社交功能作为额外的奖励,而不是必要的
  • Facebook时不时地改变它的API。API非常不可靠,如果它严重依赖社交功能,它会迫使您每隔几个月对代码进行一次更改
请阅读以下内容:。“你试了什么?”奇利昂我想你能理解我的问题。因为你太天才了,谢谢你的建议。不允许使用“共享”或“类似”选通。如果用户经过身份验证并被授予“发布”操作权限,则链接问题中的答案完全有效。您只需事先对用户进行身份验证。完整的身份验证实现示例链接在my answer()共享或类似链接中,不允许设置选通。您将永远无法为此获得发布操作的批准。你应该在你的答案中添加这些非常重要的信息。@luschn谢谢!我不知道
publish\u actions
将要求您的应用程序通过应用程序审查流程。我要补充一点,顺便说一句,你也可以添加一个平台政策的链接:-4.5是相关部分(好吧,在创建任何应用程序之前,文档中的所有内容都是相关的)。欢迎你。当开发人员试图屏蔽某些东西时,总是乐于提供帮助:)-用户应该分享或喜欢某些东西,因为他们确实想要,而不是因为他们被迫这样做。