Ben, diğer şeyler arasında, bu gibi DELETE
yöntemi kullanır, bir REST API kullanarak ediyorum:
DELETE /resources/whatever/items/123
Ben böyle cURL istimal PHP kullanarak bu erişmek için:
self::$curl = curl_init();
curl_setopt_array(self::$curl, array(
CURLOPT_AUTOREFERER => true,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_RETURNTRANSFER => true,
));
Gördüğünüz gibi, benim cURL örneği statik ve sonraki çağrılar için yeniden olacaktır. "Yerleşik" isteği yöntemleri arasında geçiş yaparken, bu çalışıyor. Örneğin, benim get()
yönteminde, ben böyle bir şey yapmak:
curl_setopt_array(self::$curl, array(
CURLOPT_HTTPGET => true,
CURLOPT_URL => self::BASE . 'whatever',
));
ve sonra çalıştırın curl_exec()
. Açıkça olası bir önceki CURLOPT_POST
silinir, CURLOPT_HTTPGET
aracılığıyla istek yöntemini ayarlayarak.
Ancak, CURLOPT_CUSTOMREQUEST
(örneğin DELETE
) diğer herhangi bir yerleşik istek yöntemini geçersiz kılar ayar. Bu sürece ben DELETE
şeyler istediğiniz gibi ince, ama örneğin, curl_setopt(self::$curl, CURLOPT_HTTPGET, true)
özel yöntemini sıfırlama olmaz çağrısında; DELETE
kullanılmaya devam edecek.
I CURLOPT_CUSTOMREQUEST
null
, false
veya boş dize ayarı denedim, ama bu sadece böyle bir HTTP isteği neden olur
/resources/whatever/items/123
yani yolu tarafından izlenen bir boşluk ve ardından yöntemi olarak boş bir dize ile.
Ben bunun yerine CURLOPT_CUSTOMREQUEST
GET
için ayarlamış olabilir ve herhangi bir sorun olmadan GET istekleri biliyoruz, ama ben sıfırlamak için bir şansınız var olup olmadığını merak CURLOPT_CUSTOMREQUEST
.