gpt4 book ai didi

php - 调用另一个 laravel 项目的 API

转载 作者:行者123 更新时间:2023-12-04 01:49:41 25 4
gpt4 key购买 nike

我有两个 Laravel 项目。其中之一有一个 API

我正在尝试使用 API 获取数据。

public function getSyncOrders() {
$orders = Invoice::where('status', 0)->get();
return response()->json([
'data' => [
'orders' => $orders
]
], 200);
}

我正在尝试从其他 laravel 项目中获取数据。

public function syncOrders() {
if(auth()->check()){
Order::truncate();

$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "http://project1.net/api/sync-orders",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 600,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET"
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
//echo "cURL Error #:" . $err;
} else {
echo $response;
}
}
else{
return redirect('/');
}
}

但是我得到了错误:

SQLSTATE[42S02]: Base table or view not found: 1146 Table 'project2.invoice' doesn't exist (SQL: select * from invoice where status = 0)

项目 1 在数据库中有表 invoice,而项目 2 在数据库中有表 orders

如果我在浏览器中使用 url http://project1.net/api/sync-orders,它会返回数据。

我需要帮助来修复 curl 请求,以便项目 2 不执行代码并在其自己的数据库中搜索,而是从 API 获取数据。

最佳答案

将项目 2 的 configenv 中的 DB_DATABASE 更改为 DB_DATABASE2 解决了该问题。

关于php - 调用另一个 laravel 项目的 API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53792205/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com