2016-10-28 3 views
0

javascript/jquery를 사용하여 short URL을 yourls API로 반환하는 방법이 있습니까? URL을 보내면 이미 생성 된 shorturl이있는 경우 ShortURL을 반환합니다. 무작위로 생성 한 다음 새로 생성 된 것을 반환합니다.shortls with yourls api

나는 가능한 모든 API를 읽었지만, 충분히 이해할 수는 없으므로이 작업을 수행 한 사람이 특정 문서를 어디에서 찾을 수 있는지 궁금해하고 있습니다.

긴 URL이있는 사람들이 링크를 클릭하여 짧은 URL을 반환하도록 허용하고 싶습니다. 이미 존재하는 경우 다시 만들지는 않습니다.

알고 계시다면 조언/조언을 부탁드립니다.

는 리처드

답변

1

귀하의 질문은 오히려 YOURLS 백엔드 대상으로하고, 친절에 감사드립니다. YOURLS의 최신 버전을 사용하고 있다면 기본적으로 중복 된 짧은 URL이 없을 것입니다. 긴 URL을 두 번 이상 제출할 경우 API는 여전히 동일한 짧은 URL (자바 클라이언트에 대한)을 반환합니다.

당신은 당신의 YOURLS 서버에 config.php에 해당 설정을 찾을 수 있습니다

/** Allow multiple short URLs for a same long URL 
** Set to true to have only one pair of shortURL/longURL (default YOURLS behavior) 
** Set to false to allow multiple short URLs pointing to the same long URL (bit.ly behavior) */ 
define('YOURLS_UNIQUE_URLS', true); 

그래서 설정이 true로 설정되어 있는지 확인하십시오.


여기에 자바 스크립트를 사용하여 짧은 URL을 만들 수있는 쉬운 방법, 당신이 시작하는 데 도움이. YOURLS에 this third party wrapper을 사용하고 있습니다.

당신은 다른 방법으로 당신의 signature token 사용자 이름/암호 또는 사용하여 서버에 연결해야합니다 연결이 다

var api = yourls.connect('http://your.server/yourls-api.php', { 
    username: 'admin', 
    password: 'qwerty' 
}); 

경우 .shorten() 사용할 수 있습니다 : 그것은 너무 않습니다 경우

api.shorten('https://yourverylonglink.com/toshorten', function(data) { 
    console.log(data.shorturl); // returns http://your.server/1234 
}); 
+0

을 존재하지 않는다, 그것을 창조한다, 존재한다면 그것을 돌려 준다? 나는 그 포장지에서 그것을 보지 못했다. 그래서 그렇게했는지 안다면 그렇게 묻는다. 답변 주셔서 감사합니다. :) –

+0

나는 그것을 얻었다. 따라서이 코드에서 : 'api.shorten ('https://yourverylonglink.com/toshorten ', function (data) { console.log (data.shorturl); // http : //your.server/1234를 반환합니다. }); ' 나는 간단하게 var를 다음과 같이 만들 것입니다 : var Short1 = api.shorten ('https://yourverylonglink.com/toshorten', function (data) { console.log (data.shorturl); // 는 http : //your.server/1234 }를 반환합니다. –

+0

네, 긴 URL을 인수로 취한 다음 단축 URL을'return'하는 코드로 함수를 생성 할 수도 있습니다. –