Autor | Zpráva | ||
---|---|---|---|
Musilda Profil |
Nejprve chci předeslat, že vůbec netuším, zda jsem to dal do správné kategorie.
Toto je kód z API Fakturoidu $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, "https://app.fakturoid.cz/api/v2/accounts/{slug}/invoices/{id}/fire.json?event=pay"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); curl_setopt($ch, CURLOPT_HEADER, FALSE); curl_setopt($ch, CURLOPT_POST, TRUE); curl_setopt($ch, CURLOPT_HTTPHEADER, array( "Content-Type: application/json", "User-Agent: YourApp (yourname@example.com)" )); $response = curl_exec($ch); curl_close($ch); Bez problémů funguje, ale na nginx serveru to vyhazuje 400 Bad request. Tak nějak jsem vyčetl, že je problém v tom, že pokud je curl_setopt($ch, CURLOPT_POST, TRUE), tak by v url neměl být ?event=pay. Ale na Apachi to normálně funguje. Nebo se prostě pletu a problém je jinde. Každá rada bude vítána. Může prosím někdo z moderátorů tuto mou hloupu otázku smazat? Děkuji :-) |
||
M4n Profil * |
#2 · Zasláno: 17. 7. 2017, 18:00:56
Možná by se slušelo dodat, že použití modulu cURL pro HTTP(s) komunikaci je až na velmi řídké výjimky zbytečné až kontraproduktivní. V prakticky 100 procentech případů postačí obyčejný file_get_contents() spolu se stream_context_create().
|
||
Keeehi Profil |
#3 · Zasláno: 17. 7. 2017, 18:13:48
Musilda:
Proč znovu vymýšlet kolo? Přímo od fakturoidu existuje knihovna na komunikaci s jejich API. Od posílání http požadavků tě to úplně odstíní, takže to nemusíš řešit. github.com/fakturoid/fakturoid-php |
||
Musilda Profil |
#4 · Zasláno: 19. 7. 2017, 09:18:12
Keeehi:
Tu já používám, ale u jednoho klienta mi nefunguje a snžím se najít řešení. |
||
Časová prodleva: 7 let
|
0