Prereq: utwórz własne klucz API dla urlshortener na https://code.google.com/apis/console/Jak mogę goo.gl skrócić adres URL w js?
Istnieje wiele docs dla różnych sposobów toczenia goo.gl URL do oryginalnego adresu URL za pomocą js get API, np: here, here i here - - a przynajmniej pierwszy działa.
Gdybym uszczypnąć, że jeden bardzo nieznacznie używać insert api przekonwertować url do drobny url, przekazując { "longUrl": "https://codepen.io/" }
zamiast jednak łamie. Wypróbuj go na http://codepen.io/johan/full/EHbGy#YOUR-API-KEY-HERE jeśli chcesz, albo uruchomić to gdzieś:
<script>
var api_key = 'YOUR-API-KEY-HERE';
function makeRequest() {
var request = gapi.client.urlshortener.url.insert({
'longUrl': 'https://codepen.io/'
});
request.execute(function(response) {
alert(JSON.stringify(window.got = response));
});
}
function load() {
gapi.client.setApiKey(api_key);
gapi.client.load('urlshortener', 'v1', makeRequest);
}
</script>
<script src="https://apis.google.com/js/client.js?onload=load"></script>
... to po prostu reaguje z błędem:
{ "code": 400
, "message": "Required"
, "data":
[ { "domain": "global"
, "reason": "required"
, "message": "Required"
, "locationType": "parameter"
, "location": "resource.longUrl"
}
]
, "error":
{ "code": 400
, "message": "Required"
, "data":
[ { "domain": "global"
, "reason": "required"
, "message": "Required"
, "locationType": "parameter"
, "location": "resource.longUrl"
}
]
}
}
sugestie? (Nie, to nie działa lepiej, jeśli zmienisz parametr url.insert
na obiekt z kluczem resource.longUrl
- lub po prostu przekazujesz adres URL bez obiektu opakowania).
Dzięki! Utrzymanie dobrych dokumentów jest tak trudne, jak tworzenie dobrych interfejsów API. – ecmanaut
@ecmanaut Co, masz na myśli, że ten link do przykładu 'Resource URL 'nie był pomocny? https://developers.google.com/url-shortener/v1/url/url#resource – doublesharp
Istnieje wiele możliwości, aby developer.google.com poprawił się dzięki komforcie (i narzędziom Google Webmaster Tools), aby uporządkować 404 . Widziałem, że jest to nieustanne stanowisko QA w pełnym wymiarze godzin. – ecmanaut