Gumaa
Mirki, problem mam z zapytaniem HTTP. Próbuję wysłać zapytanie GET z poziomu JavaScripta kilkoma metodami - używając czystego JSa lub P5.js (dokładniej funkcji httpGet lub loadJSON).

W momencie kiedy definiuję typ danych jako JSON (w czystym JSie albo w P5) dostaję powiadomienie o tym, że brak w nagłówku pozwolenia na „Access-Control-Allow-Origin". Czyli wydaje się, że rozwiązaniem jest wyciąganie JSONP zamiast samego JSON, ale...
Gdy próbuję wyciągnąć JSONP (to już tylko za pomocą
2
  • Najlepsze
  • Wszystkie komentarze
Marmite
@Gumaa: Dostajesz syntax error, bo nie rozumiesz na czym polega JSONP. JSONP to trick, w którym przesyłane przez serwer dane zostają owrapowane w funkcję JSową dostępną globalnie i umieszczone w tagu `
1
Gumaa
Gumaa Autor
@Marmite: a mógłbyś coś więcej na temat ustawiania tego proxy napisać?

I nie da się jakoś ominąć tego syntax errora dobrać się do tych surowych i niezinterpretowanych danych?
0
anonim1133
#programowanie #jquery #json #jsonp #ajax

Mireczki moje kolorowe. Robię sobie taki kawałek kodu (cross origin leci, więc musi być #jsonp)

$.getJSON( "http://localhost:8888/check/"+name+"/"+encodeURIComponent(url)+"/?jsoncallback=?", function(response){
4
  • Najlepsze
  • Wszystkie komentarze
rbielawski
rbielawski
@anonim1133: przeglądarka też musi się zgodzić, ale w to już nie wnikałem za bardzo. Generalnie musi obsługiwać CORS (czyli te nagłówki).

Cross-Origin Resource Sharing
The second technique for relaxing the same-origin policy is standardized under the name Cross-Origin Resource Sharing. This standard extends HTTP with a new Origin request header and a new Access-Control-Allow-Origin response header. It allows servers to use a header to explicitly list origins that may request
4
anonim1133
jsoncallback a nie callback?


@rbielawski: @kmiasko: A niech mnie dunder świśnie! Wystarczyło zmienić jsoncallback(tak w sieci było pisało) na callback. W prawdzie teraz muszę jakoś obsłużyć te anonimowe nazwy funkcji, bo jak podam swoją w urlu to rzuca się o ten oridżin.

Więc dodałem ten nagłówek, co Rafał zaproponował i mogę nadać swoją nazwę funkcji. Wtedy jednak success nie strzela, ale na ten przykład w .complete dostaję 'responseText' który jest
3
JackBauer
11
g.....i
g.....i
Google Calculator jako #bookmarklet w #jquery + serwer proxy z #jsonp w #php. Bo jestem leniwy. A poza tym chciałem się przykonać czy się da.
2