获取Javascript中的TinyUrl
不起作用获取Javascript中的TinyUrl,javascript,Javascript,不起作用 function ShortUrl(bigurl) { $.getJSON( "http://tinyurl.com/api-create.php", url: 'http://dfsghdsvfbjvjd.com', function(data){ alert(data); }); } 这个电话也不起作用。 尝试了各种调用,但没有得到tinyurl。您不需要$。getJSON与此api链接类似:。因为它以纯文本形式返回短url 因此,我认为这就足够了: $[
function ShortUrl(bigurl)
{
$.getJSON(
"http://tinyurl.com/api-create.php",
url: 'http://dfsghdsvfbjvjd.com',
function(data){
alert(data);
});
}
这个电话也不起作用。
尝试了各种调用,但没有得到tinyurl。您不需要
$。getJSON
与此api链接类似:。因为它以纯文本形式返回短url
因此,我认为这就足够了:
$['getJSON']('http://tinyurl.com/api-create.php?url=http://xxxxxxx.com/', function (a) {
h = a;
alert (h);
});
请参阅:您使用的API不是以JSON的形式返回缩短的URL,而是以纯文本的形式返回。而且没有办法通过AJAX调用从另一个域(这里是tinyurl)提取纯文本数据。看 如果您只想缩短一个URL客户端,那么就需要一个支持JSONP的API
$.get("http://tinyurl.com/api-create.php?url=google.com", function(shorturl){
alert(shorturl)
});
直接在浏览器中调用TinyUrl API会导致CORS问题,解决方法之一是使用CORS anywhere服务。我通常使用
tinyurlclient
npm包来缩短浏览器上的url,下面是如何使用它
npm安装@kulkul/tinyurl客户端
从“@kulkul/tinyurl-client”导入shortenUrl;
短小的https://kulkul.tech)然后((结果)=>{
console.log({result});//https://tinyurl.com/
});
另外,我是npm软件包的创建者,如果您有任何问题,可以在此处发布TinyURL不支持JSONP
url:'http://dfsghdsvfbjvjd.com“
是一个语法错误。可能是由于跨站点脚本策略造成的。见此:[[1]:如果在用户的浏览器和目标域上都没有实现,这将中断。我已经使用它数十亿次了,没有任何问题。它只是通过GET请求纯文本并获得纯文本结果。就是这样。这很奇怪。我听说的同一来源策略的唯一例外是Firefox中的web字体。你可能有一些调整我告诉过你浏览器的安全性,或者有些东西我绝对不明白。仅供参考,我只是在chrome控制台(在SO的上下文中)上尝试了它,但它断了。事实上,当我尝试此操作时,我收到浏览器错误“请求的资源上不存在“Access Control Allow Origin”头。”这不是没有解释的否决票,而是你的解释。值得更多的支持。关于CORS问题,你是正确的,不幸的是,CORS anywhere已经关闭。
$.getJSON('http://api.bitly.com/v3/shorten?callback=?',
{
format: "json",
apiKey: YOUR_API_KEY,
login: YOUR_LOGIN,
longUrl: "http://link.to.be/shortened"
},
function(response) {
console.log(response.data.url);
}
);