2012-12-05 16 views
5

Obecnie pracuję z interfejsem API innej firmy, którego nie mogę ujawnić. Podsumowanie jest:PHP: Uzyskaj treść żądania odebranego

akcja -> 3rd party -> zwrotna

Więc mój serwer komunikuje się z 3rd party z niektórych danych

Gdy dane są przesyłane z powrotem, 3rd partia wysyła XML do wywołania zwrotnego adres URL.

jestem otrzymaniu zwrotnego z nagłówkami:

Content-type: application/xml Content-Length: 69 Request-metoda: POST

Jednak print_r ($ _ POST) pokazuje nic w ogóle. Nie jest również $ _GET.

Co może być grane? Wiem, że nie możesz udzielić mi najbardziej szczegółowej odpowiedzi na podstawie mojej nieostrości, ale gdybyś mógł wskazać mi właściwy kierunek, byłoby to genialne.

+0

Zdjąć 3rd party z równania i wysłać dane siebie w tym samym formacie i potwierdzić to samo się dzieje. –

+3

$ _GET/$ _ POST są wypełniane tylko wtedy, gdy mechanizm wywołania zwrotnego interfejsu API ma prawidłowy typ "formularza HTML". może wysyłać xml w formacie raw-unapaperulated, w takim przypadku musisz go odczytać bezpośrednio z 'php: // input'. –

Odpowiedz

19

Zastosowanie php://input:

$post = file_get_contents('php://input'); 
+0

Działa doskonale, dzięki! Wybiorę odpowiedź najszybciej, jak będę mógł. – Ozzy

+0

OK, więc $ post działa i widzę tam dane; jak wyodrębnić poszczególne elementy? – andrebruton

Powiązane problemy