Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> AJAX miedzy domenami - co zrobić z jquery Objectem
Sadamowski
post
Post #1





Grupa: Zarejestrowani
Postów: 20
Pomógł: 1
Dołączył: 4.07.2011

Ostrzeżenie: (0%)
-----


Witam,

jest mały problem z czyms co wydaje się jasne ze względu na bezpieczenstwo a z drugiej strony musi byc jakies obejście:

chciałem zmałpowac pole wyszukiwarki z inteligentnym podpowiadaniem z jednej stronki. Podglądnąłem firebugiem jak wygląda request i po wrzuceniu go w przeglądarke dostaje coś takiego:

  1. jQuery18303185707158409059_1370954922211({'data': {'QueryTerm': 'cl', 'Language': 'en', 'SuggestionItems': {0: {'Category': '', 'Weight': '99', 'Suggestion': 'cloud'}, 1: {'Category': '', 'Weight': '35', 'Suggestion': 'cloud security'}, 2: {'Category': '', 'Weight': '30', 'Suggestion': 'cloud development'}, 3: {'Category': '', 'Weight': '30', 'Suggestion': 'cloud application delivery'}, 4: {'Category': '', 'Weight': '25', 'Suggestion': 'cloud service automation'}, 5: {'Category': '', 'Weight': '25', 'Suggestion': 'cloud management'}, 6: {'Category': '', 'Weight': '20', 'Suggestion': 'client automation'}, 7: {'Category': '', 'Weight': '18', 'Suggestion': 'clip'}, 8: {'Category': '', 'Weight': '18', 'Suggestion': 'closed loop incident process'}, 9: {'Category': '', 'Weight': '18', 'Suggestion': 'closed loop incident process (clip)'}}}})


no dobra... to teraz robie z tego zapytanie ajaxowe:

  1. $.ajax({
  2. type: 'GET',
  3. url: 'tu ten adresik/search',
  4. cache: false,
  5. dataType : 'script',
  6. data: {cb: 'jQuery18303185707158409059_1370954922211', q: 'cl', lang: 'en', _ : timest},
  7. success: function(html){
  8. alert(html);
  9. },
  10. error: function(data, status){
  11. alert('error: -> ' + status);
  12. }
  13. });
  14. });

Oczywiście jesli zmieniam dataType na json (bez sensu) albo text to ląduje w błędzie. Sprawa wydaje sie byc dosyć jasna ze względu na XRFS. z drugiej strony komus tam działa a ja nie moge podglądnąć źródeł ... bo nie.. i już. Jakis pomysł jak dobrać sie do danych. Chetnie podrzuce inne szczegóły sprawy jak bedzie trzeba.
Pozdro

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
buliq
post
Post #2





Grupa: Zarejestrowani
Postów: 559
Pomógł: 93
Dołączył: 4.03.2008
Skąd: Olsztyn

Ostrzeżenie: (0%)
-----


Chodziło ci o XSRF(CSRF)?
Poczytaj o Same origin policy

Poza tym te ograniczenia dotyczą POST'a, ty wysyłasz GET, powinieneś pobrać poprawne wyniki chyba że autor strony z której kopiujesz zabezpieczył się (aby np odpowiedzi dostawały tylko zapytania z jego domeny)
Sprawdź w Dev HTTP Client (dodatek do Chrome) czy po wysłaniu requesta dostaniesz odpowiedź


--------------------
KTOŚ TU PACZY???

Kompedium wiedzy
Go to the top of the page
+Quote Post
Sadamowski
post
Post #3





Grupa: Zarejestrowani
Postów: 20
Pomógł: 1
Dołączył: 4.07.2011

Ostrzeżenie: (0%)
-----


hmmm ale gdyby sie zabezpieczyl to wlkepując pełny adres z zapytaniem GET nie powiniennem dostac nic.

tu tez Firebugiem dostaje response:
jQuery18303185707158409059_1370954922211({'data': {'QueryTerm': 'cl', 'Language': 'en', 'SuggestionItems': {0: {'Category': '', 'Weight': '99', 'Suggestion': 'cloud'}, 1: {'Category': '', 'Weight': '35', 'Suggestion': 'cloud security'}, 2: {'Category': '', 'Weight': '30', 'Suggestion': 'cloud development'}, 3: {'Category': '', 'Weight': '30', 'Suggestion': 'cloud application delivery'}, 4: {'Category': '', 'Weight': '25', 'Suggestion': 'cloud service automation'}, 5: {'Category': '', 'Weight': '25', 'Suggestion': 'cloud management'}, 6: {'Category': '', 'Weight': '20', 'Suggestion': 'client automation'}, 7: {'Category': '', 'Weight': '18', 'Suggestion': 'clip'}, 8: {'Category': '', 'Weight': '18', 'Suggestion': 'closed loop incident process'}, 9: {'Category': '', 'Weight': '18', 'Suggestion': 'closed loop incident process (clip)'}}}})

wiec powinno być ok. Pytanie teraz jak dobrać sie do tych danych. Evalem to polecieć... chodzi przedewszystkim zeby dobrac sie do pola Suggestion tego obiektu.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 08:29