从AS3网站共享到Facebook的url
我正在尝试共享一个flash as3网站的URL,但我无法使它正常工作。。。 我尝试了这里给出的两种方法: 第一个是:从AS3网站共享到Facebook的url,facebook,actionscript,sharing,Facebook,Actionscript,Sharing,我正在尝试共享一个flash as3网站的URL,但我无法使它正常工作。。。 我尝试了这里给出的两种方法: 第一个是: import flash.net.navigateToURL; import flash.net.URLVariables; import flash.net.URLRequest; import flash.net.URLRequestMethod; share_btn.addEventListener(MouseEvent.CLICK, shareClickHandler
import flash.net.navigateToURL;
import flash.net.URLVariables;
import flash.net.URLRequest;
import flash.net.URLRequestMethod;
share_btn.addEventListener(MouseEvent.CLICK, shareClickHandler);
function shareClickHandler(evt:MouseEvent):void
{
var varsShare:URLVariables = new URLVariables();
varsShare.u = 'http://domain.com/pageN.html';
varsShare.t = 'Title Page';
var urlFacebookShare:URLRequest = new URLRequest('http://www.facebook.com/sharer.php');
urlFacebookShare.data = varsShare;
urlFacebookShare.method = URLRequestMethod.GET;
navigateToURL(urlFacebookShare, '_blank');
}
但是,邮报说:
In order to use a picture add the following Metatags:
<meta name="title" content="my title" />
<meta name="description" content="my description" />
<link rel="image_src" href="images/thumbnail_image.jpg" />
但它没有使用Facebook共享器。。。。。
我尝试了许多不同的方法来结合这两种解决方案,但我什么也没有得到,但奇怪的网址不工作
请问,有人能帮我一下吗,或者告诉我如何使用第二种解决方案,但与共享
非常感谢您的帮助您需要将OpenGraph元标记添加到您尝试共享的页面http://domain.com/pageN.html 在上面的例子中`。你在问题中给出的元标记应该添加到那里,这样Facebook共享脚本就可以获取它 在HTML代码中的和标记之间添加以下代码:
<meta name="title" content="my title" />
<meta name="description" content="my description" />
<link rel="image_src" href="images/thumbnail_image.jpg" />
我通常做的事情-我创建一个facebook应用程序-使用facebook登录创建网站,添加应用程序域,然后在html中添加以下javascript功能:
function postToFacebook(link){
var caption = encodeURIComponent("this is cool");
var name = encodeURIComponent("My cool Site");
var pathToPicture = "http://yoursite.com/coolpicture.jpg";
var redirect = "http://yoursite.com/redirect.html";
var id = "123456789098876"; // your application id
var theLink = link; // the link you want to share - this is passed as a variable from flash, similary you can pass any variables from flash
var fbencoded = "http://www.facebook.com/dialog/feed?app_id=" + id + "&link=" + theLink + "&picture=" + pathToPicture + "&name=" + name + "&caption=" + caption+ "&redirect_uri=" + redirect;
window.open(fbencoded, "_blank");
}
在flash中,只要调用此javascript函数,facebook共享窗口就会打开新窗口:
ExternalInterface.call("postToFacebook", "http://mysite.com/#/cool-page")
通过这种方式,您可以将任何变量传递给该函数。例如,当有人共享时,你可以有不同的图片,而仅仅使用元标记是不可能的
唯一的问题是您必须创建redirect.html,它必须位于您的域内,并链接到您的应用程序。在重定向中,您可以有如下简单的内容:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title></title>
<meta http-equiv="REFRESH" content="0;url=http://www.facebook.com">
</head>
<body>
</body>
</html>
它只会将用户重定向到facebook。
希望这有帮助。这是我在AS3中通过按钮使用共享对话框的方式。我希望它能帮助你
import flash.net.navigateToURL;
share_btn.addEventListener(MouseEvent.CLICK, shareClickHandler);
function shareClickHandler(evt:MouseEvent):void
{
var fb_title = "titulo";
var fb_desc = "descripcion";
var fb_url = "http://mibff.com.mx/";
var fab_img = "http://mibff.com.mx/MiBFF_new.jpg";
var facebookSharer:String = "http://www.facebook.com/sharer.php?s=100&p[title]=" + fb_title + "&p[summary]=" + fb_desc + "&p[url]=" + fb_url + "&p[images][0]=" + fab_img;
var jscommand:String = "window.open('" + facebookSharer + "','win','width=626,height=316,toolbar=no,scrollbars=no,resizable=no');";
var sharer:URLRequest = new URLRequest("javascript:" + jscommand + " void(0);");
navigateToURL(sharer,"_self");
//trace(facebookSharer);
}
好的,谢谢你!问题是,这些标记是在我的as3应用程序中使用deeplink动态生成的。。。。相应的html页面实际上并不存在……这就是为什么它不起作用的原因。这些页面需要存在,即使它是虚拟的。
import flash.net.navigateToURL;
share_btn.addEventListener(MouseEvent.CLICK, shareClickHandler);
function shareClickHandler(evt:MouseEvent):void
{
var fb_title = "titulo";
var fb_desc = "descripcion";
var fb_url = "http://mibff.com.mx/";
var fab_img = "http://mibff.com.mx/MiBFF_new.jpg";
var facebookSharer:String = "http://www.facebook.com/sharer.php?s=100&p[title]=" + fb_title + "&p[summary]=" + fb_desc + "&p[url]=" + fb_url + "&p[images][0]=" + fab_img;
var jscommand:String = "window.open('" + facebookSharer + "','win','width=626,height=316,toolbar=no,scrollbars=no,resizable=no');";
var sharer:URLRequest = new URLRequest("javascript:" + jscommand + " void(0);");
navigateToURL(sharer,"_self");
//trace(facebookSharer);
}