首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Javascript中获取TinyUrl

在Javascript中获取TinyUrl
EN

Stack Overflow用户
提问于 2013-07-01 05:31:48
回答 3查看 7.9K关注 0票数 4
代码语言:javascript
复制
function ShortUrl(bigurl)
{
$.getJSON(
  "http://tinyurl.com/api-create.php",
   url: 'http://dfsghdsvfbjvjd.com',
  function(data){
   alert(data);
  });
}

不工作

代码语言:javascript
复制
$['getJSON']('http://tinyurl.com/api-create.php?url=http://xxxxxxx.com/', function (a) {
                         h = a;
alert (h);

                     });

此调用也不起作用。已尝试各种调用,但未获得tinyurl。

EN

回答 3

Stack Overflow用户

发布于 2013-07-01 05:47:34

您正在使用的API返回的不是JSON形式的缩短URL,而是纯文本形式。而且无法通过AJAX调用从另一个域(这里是tinyurl)提取纯文本数据。参见same origin policy

如果您想要做的只是缩短URL客户端,bit.ly有一个支持JSONP的应用程序接口。

代码语言:javascript
复制
$.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);
    }
);
票数 4
EN

Stack Overflow用户

发布于 2013-07-01 05:37:46

你不需要像http://tinyurl.com/api-create.php?url=google.com这样的$.getJSON接口链接。因为它将短url作为纯文本返回。

所以,我认为这就足够了:

代码语言:javascript
复制
$.get("http://tinyurl.com/api-create.php?url=google.com", function(shorturl){
    alert(shorturl)
});

请参阅:http://api.jquery.com/jQuery.get/

票数 2
EN

Stack Overflow用户

发布于 2020-06-03 13:41:20

直接在浏览器中调用CORS应用程序接口会导致cors问题,其中一个解决方法是使用cors-anywhere服务。我通常使用tinyurl-client npm包来缩短浏览器上的url,下面是如何使用它

  1. 将其安装在终端

代码语言:javascript
复制
npm install @kulkul/tinyurl-client

  1. 在javascript

上使用它

代码语言:javascript
复制
import shortenUrl from "@kulkul/tinyurl-client";

shortenUrl("https://kulkul.tech").then((result) => {
    console.log({ result }); // https://tinyurl.com/<slug>
});

附言:我是npm包的创建者,如果你有任何问题,可以在这里发布https://github.com/kulkultech/tinyurl-client

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17395063

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档