[英]Making single endpoint for different API using laravel
我有一個項目需要我使用 Laravel 為不同的有效負載格式創建一個端點。 由於我對 Laravel 還很陌生,而且我仍然學習了幾天,我想知道如何解決這個問題以及如何將不同的有效負載保存到同一個數據庫中? 謝謝回復。
既然你們問這個案子,就是這樣
第一個有效載荷:
case_1 = {
"date_of_test":"20210227134300",
"id_number":"IC000A2",
"patient_name":"Patient A4",
"gender":"F",
"date_of_birth":"19940231",
"lab_number":"QT196-21-124",
"clinic_code":"QT196",
"lab_studies":[
{
"code":"2085-9",
"name":"HDL Cholesterol",
"value":"cancel",
"unit":"mg/dL",
"ref_range":"> 59",
"finding":"A",
"result_state":"F"
}
],
}
第二個有效載荷:
case_2 = {
"patient_data":
{
"id_number":"IC000A3",
"first_name":"Patient",
"last_name":"A5",
"phone_mobile":"+6500000000"
"gender":"M",
"date_of_birth":"19940231",
},
"date_of_test":"20210227134300",
"lab_number":"QT196-21-124",
"clinic_code":"QT196",
"lab_studies":[
{
"code":"2085-9",
"name":"HDL Cholesterol",
"value":"cancel",
"unit":"mg/dL",
"ref_range":"> 59",
"finding":"A",
"result_state":"F"
}
],
}
我無法正確理解您的問題,但是如果您詢問具有相同端點的不同 http 請求方法,那么您可以這樣做
Route::get('/same-end-point', 'XYZController@show');
Route::post('/same-end-point', 'XYZController@store');
Route::put('/same-end-point', 'XYZController@update');
Route::delete('/same-end-point', 'XYZController@destroy');
或者,如果您要求在同一個數據庫中保存不同的有效負載,以便您可以在表中創建一個類型為 JSON 的列,並將有效負載保存到該列中,在此處輸入圖像描述
嗨,我不確定您要存儲的箱子有多大不同。 如果有合理數量的案例類型,那么我建議為此創建多個端點。
否則,您仍然可以定義您的 API,以接受一個屬性,例如case_info
,它接受 json 格式的非結構化數據。 然后,您可以將此數據插入 noSQL 數據庫(例如 MongoDB)中,或者將其序列化,並將其放入 SQL 數據庫中。 (盡管不推薦使用后者。在幾年甚至更少的時間里,你會遇到困難,與它一起工作)。
如果您選擇 go 這種方式,您只需要確保您的客戶端(將數據呈現給最終用戶)能夠處理這種不同的存儲格式。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.