【发布时间】:2013-02-09 12:58:11
【问题描述】:
我正在尝试在 Javascript 中使用这个 PHP API。如何在 Javascript 中使用 file_get_contents 和 json_decode?p>
PHP API 代码
$content=@file_get_contents("http://doma.in/api/?url=http://www.google.com&api=APIKEY");
$url=json_decode($content,TRUE);//Decodes json into an array
if(!$url["error"]){ // If there is no error
echo $url["short"]; //Outputs the short url
}else{
echo $url["msg"]; //Outputs the error message
}
Javascript
(function( $ ) {
$(document).ready(function() {
var url = window.location.href;
var host = window.location.hostname;
var title = $('title').text();
title = escape(title);
var twitter = 'http://twitter.com/home?status='+title+'%20'+url;
var facebook = 'http://www.facebook.com/sharer.php?u='+url;
var tbar = '<div id="sicons">';
tbar += '<a href="'+twitter+'" id="twitter" title="Share on twitter">Twitter</a>';
tbar += '<a href="'+facebook+'" id="facebook" title="Share on Facebook">Facebook</a>';
tbar += '</div>';
});
})(jQuery);
编辑:感谢回复
data.php
$content = @file_get_contents('http://doma.in/api.php?api=asd4sdf5634d&url=' . urlencode('http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']));
echo $content;
我已将此添加到 Javascript 的顶部
$.getJSON('data.php', function(data) {
if(!data.error){ // If there is no error
alert(data.short) //Outputs the short url
}else{
alert(data.msg)
}
});
Javascript 现在看起来像这样
(function( $ ) {
$(document).ready(function() {
var shorturl = data.short;
var title = $('title').text();
title = escape(title);
var twitter = 'http://twitter.com/home?status='+title+'%20'+url;
var facebook = 'http://www.facebook.com/sharer.php?u='+url;
var tbar = '<div id="sicons">';
tbar += '<a href="'+twitter+'" id="twitter" title="Share on twitter">Twitter</a>';
tbar += '<a href="'+facebook+'" id="facebook" title="Share on Facebook">Facebook</a>';
tbar += '</div>';
});
})(jQuery);
我确定我做错了什么。抱歉,我是编码(C、C++)的初学者
【问题讨论】:
-
javascript 中没有
file_get_contents()。您可以使用 ajax 仅从同一域下载页面 -
意味着最好将 Javascript 转换为 PHP 代码。感谢您的回复。
-
Acctionaly 你应该混合 PHP+AJAX 来让它工作。使用 PHP 在单独的文件中创建按钮 HTML,使用 AJAX 下载按钮
-
示例:gist.github.com/anonymous/4745269。但老实说,谷歌让你可以访问 JAVASCRIPT API,所以你根本不需要使用 PHP....
-
嘿,看看这个链接可能对你有用stackoverflow.com/questions/8227638/…
标签: javascript social-networking social