Moja aplikacja (A) musi przesłać pliki przez AJAX (biblioteka Fineuploader) do mojej poddomeny (B) (fizycznie inny serwer).Akcja ajax w domenie Zend w Zend Framework
Jakie jest moje rozwiązanie: zestaw nagłówków na B, aby wnioski z A. Zobacz ten kod działania kontrolera:
public function imageAction()
{
$this->_response->setHeader('Access-Control-Allow-Origin', 'http://' . Zend_Registry::get('config')->main_server->path);
$this->_response->setHeader('Access-Control-Allow-Headers', 'Content-Type, Content-Range, Content-Disposition, Content-Description');
$this->_helper->json(array('test'));
}
Wtedy staram się wywołać tę akcję AJAX z A. prośba kolejne nagłówki :
Request URL:http://sub.domain.dev/upload/image
Request Method:OPTIONS
Status Code:403 Forbidden
Accept:*/*
Accept-Encoding:gzip,deflate,sdch
Accept-Language:ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4
Access-Control-Request-Headers:access-control-allow-origin, x-mime-type, origin, x-requested-with, cache-control, x-file-name, content-type
Access-Control-Request-Method:POST
Connection:keep-alive
Host:sub.domain.dev
Origin:http://domain.dev
Referer:http://domain.dev
Co zrobiłem źle? Dzięki.
P.S. Kiedy wysłać wniosek z tych nagłówków:
Accept:application/json, text/javascript, */*; q=0.01
Accept-Encoding:gzip,deflate,sdch
Accept-Language:ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4
Cache-Control:no-cache
Connection:keep-alive
Content-Length:0
Host:sub.domain.dev
Origin:http://domain.dev
Pragma:no-cache
Referer:http://domain.dev
Tho myślę, że problem w nagłówkach, Wysłano wiadomość przez serwer.
crossdomain ajax? Czy słyszałeś o SOP? – Robert
Czy to pomaga? http://stackoverflow.com/questions/13609296/zend-framework-2-ajax-request-from-other-server – Jon
@Robert, pewnie, crossdomain ajax. Może ty możesz mi pomóc? To jest możliwe. Ale mam wojnę z tymi nagłówkami. – pltvs