Avatar
Michal Vašíček
Tým ITnetwork
Avatar
Michal Vašíček:

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
Příspěvek může obsahovat stopy arašídů, sarkasmu a sóji.
Avatar
Filip Šohajek
Redaktor
Avatar
Odpovídá na Michal Vašíček
Filip Šohajek:

A s wildcard v Allow-Origin to jede?

 
Nahoru Odpovědět 26.5.2015 15:16
Avatar
Michal Vašíček
Tým ITnetwork
Avatar
Nahoru Odpovědět 26.5.2015 15:32
Příspěvek může obsahovat stopy arašídů, sarkasmu a sóji.
Avatar
Filip Šohajek
Redaktor
Avatar
Odpovídá na Michal Vašíček
Filip Šohajek:

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

 
Nahoru Odpovědět 26.5.2015 15:34
Avatar
Michal Vašíček
Tým ITnetwork
Avatar
Nahoru Odpovědět 26.5.2015 15:35
Příspěvek může obsahovat stopy arašídů, sarkasmu a sóji.
Avatar
Filip Šohajek
Redaktor
Avatar
Odpovídá na Michal Vašíček
Filip Šohajek:

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
Avatar
Michal Vašíček
Tým ITnetwork
Avatar
Odpovídá na Filip Šohajek
Michal Vašíček:

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
Příspěvek může obsahovat stopy arašídů, sarkasmu a sóji.
Avatar
Filip Šohajek
Redaktor
Avatar
Odpovídá na Michal Vašíček
Filip Šohajek:

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
Avatar
Michal Vašíček
Tým ITnetwork
Avatar
Nahoru Odpovědět 26.5.2015 15:40
Příspěvek může obsahovat stopy arašídů, sarkasmu a sóji.
Avatar
Filip Šohajek
Redaktor
Avatar
Odpovídá na Michal Vašíček
Filip Šohajek:

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
Avatar
Filip Šohajek
Redaktor
Avatar
Odpovídá na Filip Šohajek
Filip Šohajek:

Do skriptu :

if ( "OPTIONS" === $_SERVER['REQUEST_METHOD'] ) {
    die();
}
 
Nahoru Odpovědět 26.5.2015 15:46
Avatar
Michal Vašíček
Tým ITnetwork
Avatar
Nahoru Odpovědět 26.5.2015 15:52
Příspěvek může obsahovat stopy arašídů, sarkasmu a sóji.
Avatar
Filip Šohajek
Redaktor
Avatar
Odpovídá na Michal Vašíček
Filip Šohajek:

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

 
Nahoru Odpovědět 26.5.2015 15:53
Avatar
Michal Vašíček
Tým ITnetwork
Avatar
Odpovídá na Filip Šohajek
Michal Vašíček:
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
Příspěvek může obsahovat stopy arašídů, sarkasmu a sóji.
Avatar
Filip Šohajek
Redaktor
Avatar
Odpovídá na Michal Vašíček
Filip Šohajek:
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
Avatar
Michal Vašíček
Tým ITnetwork
Avatar
Odpovídá na Filip Šohajek
Michal Vašíček:

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
Příspěvek může obsahovat stopy arašídů, sarkasmu a sóji.
Avatar
Michal Vašíček
Tým ITnetwork
Avatar
Nahoru Odpovědět 26.5.2015 16:20
Příspěvek může obsahovat stopy arašídů, sarkasmu a sóji.
Avatar
Michal Vašíček
Tým ITnetwork
Avatar
Michal Vašíček:

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
Příspěvek může obsahovat stopy arašídů, sarkasmu a sóji.
Avatar
Filip Šohajek
Redaktor
Avatar
 
Nahoru Odpovědět 26.5.2015 19:11
Avatar
Michal Vašíček
Tým ITnetwork
Avatar
Odpovídá na Filip Šohajek
Michal Vašíček:

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
Příspěvek může obsahovat stopy arašídů, sarkasmu a sóji.
Avatar
Filip Šohajek
Redaktor
Avatar
Odpovídá na Michal Vašíček
Filip Šohajek:

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
Avatar
Michal Vašíček
Tým ITnetwork
Avatar
Nahoru Odpovědět 26.5.2015 19:23
Příspěvek může obsahovat stopy arašídů, sarkasmu a sóji.
Avatar
Filip Šohajek
Redaktor
Avatar
Odpovídá na Michal Vašíček
Filip Šohajek:

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
Avatar
Michal Vašíček
Tým ITnetwork
Avatar
Odpovídá na Filip Šohajek
Michal Vašíček:

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
Příspěvek může obsahovat stopy arašídů, sarkasmu a sóji.
Avatar
Michal Vašíček
Tým ITnetwork
Avatar
Odpovídá na Michal Vašíček
Michal Vašíček:

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
Příspěvek může obsahovat stopy arašídů, sarkasmu a sóji.
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.