我制作了一个简单的api,它返回一些值,但如果我添加这一行并传递像curl_setopt($cURLConnection, CURLOPT_POSTFIELDS , $data);
这样的数据,我的api返回null这里是完整的代码
$data = ['a' => "data"];
$url = env('MOTHERSHIP_URL') . '/store/cstore/receipt';
Log::debug("url=" . $url);
$cURLConnection = curl_init();
curl_setopt($cURLConnection, CURLOPT_URL, $url);
curl_setopt($cURLConnection, CURLOPT_POST, true);
curl_setopt($cURLConnection, CURLOPT_POSTFIELDS , $data);
curl_setopt($cURLConnection, CURLOPT_RETURNTRANSFER, true);
curl_setopt($cURLConnection, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($cURLConnection, CURLOPT_SSL_VERIFYHOST, false);
$apiResponse = curl_exec($cURLConnection);
curl_close($cURLConnection);
$data = json_decode($apiResponse, true);
dd($data);
路线
Route::any('/store/cstore/receipt', 'CStoreController@StoreCstoreReceipt')->name('store.cstore.receipt');
控制器
public function StoreCstoreReceipt(Request $request){
Log::debug($request->all());
return "Success";
}
问题是,如果我添加curl_setopt($cURLConnection, CURLOPT_POSTFIELDS , $data);
api,返回null。如果不添加这一行,那么它工作正常。我做错了什么?我也尝试了另一种方法,但在这种方法中,我得到了一些html接受来获得响应
尝试curl_setopt($ch, CURLOPT_POSTFIELDS,json_encode($arr));