Aktuálně: Postihly zákazy tvou profesi? Poptávka po ajťácích prudce roste, využij slevové akce 80% výuky zdarma!
Pouze tento týden sleva až 80 % na e-learning týkající se Pythonu
birthday
Avatar

Člen
Avatar
:26.5.2015 15:00

Ahoj, už do včerejšího večera se snažím nějak zprovoznit CORS. Firefox ale pořád háže error

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at -url-. (Reason: CORS request failed).

Už jsem toho zkoušel až moc, aktuálně mám v PHP scriptu (na začátku samozřejmě)

header("Access-Control-Allow-Origin: http://peopleguild.com");
header("Access-Control-Allow-Credentials: true ");
header("Access-Control-Allow-Methods: OPTIONS, GET, POST");
header("Access-Control-Allow-Headers: Content-Type, Depth, User-Agent, X-File-Size, X-Requested-With, If-Modified-Since, X-File-Name, Cache-Control");
header('Content-type: application/json');

Poradíte někdo? Píšu do webových serverů, páč mi to běží na VPSku a tím pádem mám plnou moc nad konfigurací Apache, takže to můžu nastavit natvrdo. Chci to jen pro jeden soubor, ostatní by měly zůstat.

 
Odpovědět
26.5.2015 15:00
Avatar
Odpovídá na
Neaktivní uživatel:26.5.2015 15:16

A s wildcard v Allow-Origin to jede?

Nahoru Odpovědět
26.5.2015 15:16
Neaktivní uživatelský účet
Avatar

Člen
Avatar
 
Nahoru Odpovědět
26.5.2015 15:32
Avatar
Odpovídá na
Neaktivní uživatel:26.5.2015 15:34

A dostává prohlížeč ty hlavičky? (dev tools Network)

Nahoru Odpovědět
26.5.2015 15:34
Neaktivní uživatelský účet
Avatar

Člen
Avatar
Odpovídá na Neaktivní uživatel
:26.5.2015 15:35

Ano, dostává

 
Nahoru Odpovědět
26.5.2015 15:35
Avatar
Odpovídá na
Neaktivní uživatel:26.5.2015 15:37

Jiné prohlížeče? Chrome a spol. má s tolerancí CORS vážné problémy.

  • zkus wildcard bez credientails
Editováno 26.5.2015 15:37
Nahoru Odpovědět
26.5.2015 15:37
Neaktivní uživatelský účet
Avatar

Člen
Avatar
Odpovídá na Neaktivní uživatel
:26.5.2015 15:38

Tomu wildcard bez credientails rozumím asi jako španělovi. A ten error mi háže Firefox OS appka (mám JS konzoli na kompu ve Firefox Developer Edition).

 
Nahoru Odpovědět
26.5.2015 15:38
Avatar
Odpovídá na
Neaktivní uživatel:26.5.2015 15:39

Místo toho všeho tam dej :

header("Access-Control-Allow-Origin: *");

Jen pro test

Editováno 26.5.2015 15:39
Nahoru Odpovědět
26.5.2015 15:39
Neaktivní uživatelský účet
Avatar

Člen
Avatar
Odpovídá na Neaktivní uživatel
:26.5.2015 15:40

To už jsem taky zkoušel :(

 
Nahoru Odpovědět
26.5.2015 15:40
Avatar
Odpovídá na
Neaktivní uživatel:26.5.2015 15:43

Jak ti odpovídá server na ten request, zejména hlavičky?

// Aha, jsem vůl :D

Editováno 26.5.2015 15:44
Nahoru Odpovědět
26.5.2015 15:43
Neaktivní uživatelský účet
Avatar
Odpovídá na Neaktivní uživatel
Neaktivní uživatel:26.5.2015 15:46

Do skriptu :

if ( "OPTIONS" === $_SERVER['REQUEST_METHOD'] ) {
    die();
}
Nahoru Odpovědět
26.5.2015 15:46
Neaktivní uživatelský účet
Avatar

Člen
Avatar
Odpovídá na Neaktivní uživatel
:26.5.2015 15:52

Pořád ten samý error.

 
Nahoru Odpovědět
26.5.2015 15:52
Avatar
Odpovídá na
Neaktivní uživatel:26.5.2015 15:53

Jak odesíláš data? (pošli tu část kódu co dělá ten request)

Nahoru Odpovědět
26.5.2015 15:53
Neaktivní uživatelský účet
Tento výukový obsah pomáhají rozvíjet následující firmy, které dost možná hledají právě tebe!
Avatar

Člen
Avatar
Odpovídá na Neaktivní uživatel
:26.5.2015 16:02
var blockclient = new XMLHttpRequest();
    blockclient.open('GET', '-url-');
    blockclient.onreadystatechange = function() {
        if (blockclient.readyState == 4) {
            alert(blockclient.responseText);
        }
    }
    blockclient.send();
 
Nahoru Odpovědět
26.5.2015 16:02
Avatar
Odpovídá na
Neaktivní uživatel:26.5.2015 16:03
blockclient.setRequestHeader("Content-type","application/json");
Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
Nahoru Odpovědět
26.5.2015 16:03
Neaktivní uživatelský účet
Avatar

Člen
Avatar
Odpovídá na Neaktivní uživatel
:26.5.2015 16:11

A kam konkrétně? Teď to ten error háže dvakrát (mám to nad onreadystatechange)

 
Nahoru Odpovědět
26.5.2015 16:11
Avatar
Odpovídá na
Neaktivní uživatel:26.5.2015 16:14

Zkus to před send

Nahoru Odpovědět
26.5.2015 16:14
Neaktivní uživatelský účet
Avatar

Člen
Avatar
 
Nahoru Odpovědět
26.5.2015 16:20
Avatar

Člen
Avatar
:26.5.2015 19:10

Nějak záhadně jsem pokročil, teď už to neháže CORS chybu ale

An attempt was made to use an object that is not, or is no longer, usable
 
Nahoru Odpovědět
26.5.2015 19:10
Avatar
Odpovídá na
Neaktivní uživatel:26.5.2015 19:11

Špatná cesta k souboru

Nahoru Odpovědět
26.5.2015 19:11
Neaktivní uživatelský účet
Avatar

Člen
Avatar
Odpovídá na Neaktivní uživatel
:26.5.2015 19:16

Když si tu URL, kterou to volá (přidává se do ní ještě pár parametrů) nechám vypsat do konzole, normálně ji můžu načíst...

 
Nahoru Odpovědět
26.5.2015 19:16
Avatar
Odpovídá na
Neaktivní uživatel:26.5.2015 19:20

Experimentoval jsi až moc, před open to nemůže být.

Editováno 26.5.2015 19:20
Nahoru Odpovědět
26.5.2015 19:20
Neaktivní uživatelský účet
Avatar

Člen
Avatar
Odpovídá na Neaktivní uživatel
:26.5.2015 19:23

Jak to sakra víš? :D

 
Nahoru Odpovědět
26.5.2015 19:23
Avatar
Odpovídá na
Neaktivní uživatel:26.5.2015 19:26

Vím, tato chyba má jen dva případy - Špatná URL a metody na XHR před open. Takto se ta chyba strašně blbě detekuje, jen přes diskuzi.

Nahoru Odpovědět
26.5.2015 19:26
Neaktivní uživatelský účet
Avatar

Člen
Avatar
Odpovídá na Neaktivní uživatel
:26.5.2015 19:29

Tak co by sis představoval? Můžu ti dát přístup na server... Ale to asi spíš přes Skype, než v diskusi...

 
Nahoru Odpovědět
26.5.2015 19:29
Avatar

Člen
Avatar
Odpovídá na
:26.5.2015 20:00

Ještě kdyby mohl někdo jiný pomoct, už jsem se dopracoval k tomu, že to háže jen chybu v jedné hlavičce :) (teď používám .htaccess a zázračně to funguje)

Reason: CORS header 'Access-Control-Allow-Origin' does not match '*, *'
 
Nahoru Odpovědět
26.5.2015 20:00
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 26 zpráv z 26.