@soris1989 כתב בבקשת POST בC# יוצרת שגיאה:
@עידו מה שדיברנו עד עכשיו זה שגיאה בשליחת בקשת POST ב-C#, ב-PHP אין את הבעיה הזו.
תשתמש בפונקציה הבאה:
<?php function sendPostRequest($url, $data, $headers = []) { $ch = curl_init($url); // Convert data to JSON $jsonData = json_encode($data); // Set headers $defaultHeaders = [ 'Content-Type: application/json', 'Content-Length: ' . strlen($jsonData) ]; $headers = array_merge($defaultHeaders, $headers); // cURL options curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // צריך להגדיר כדי שתוכל לשלוח בקשות ללא SSL curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); // צריך להגדיר כדי שתוכל לשלוח בקשות ללא SSL curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, $jsonData); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); // Execute request $response = curl_exec($ch); // Handle errors if ($response === false) { return "cURL Error: " . curl_error($ch); } curl_close($ch); return $response; }
גם עכשיו שלחתי בC# רק שבשביל להיות בטוח במה שהhttpclient שולח (ההדר והתוכן) עשיתי עמוד PHP שיחזיר בדיוק את הבקשה שנשלחה, ומהערך שחוזר רואים שהתוכן שנשלח הוא תקין, גם מבחינת ההדר שלו, שהוא של ג'סון ולא משהו אחר