[英]Proper Date format for REST API
我有一個如下所示的 API 網址:
“https://cloud.XXXXXXXXX.com/api/data/XXXXXXX2017112020-804?from=2021-1-1T00:00:00&to=2021-2-26T00:00:00&averagingperiod=60&includejournal=false”
Api,使用此格式解碼 URL 並從端點獲取我需要的數據:我使用的方法是“GET”,URL 如下所示:“api/data/serial?from=start time&to=end time&averagingperiod=平均周期&includejournal=包括期刊'
api/data 是標准的還是串行的? 是端點的序列號。 (?from=) 和 (&to=) 是我使用ISO 8601規則設置的參數。 但我需要設置時間 (from=) 24 小時前 (to=) 當前時間,例如: (?from=" . date('Ym-d', $yesterday) . "T" . "00: 00:00" . "&to=" . date("Ymd") . "T" . "00:00:00" .)
日期和時間格式是這樣的:(yyyy-mm-ddT00:00:00)
我的代碼如下所示:
<?php
// get the timestamp of yesterday
$yesterday = strtotime('-24 Hours');
// get the timestamp of today
$today = date();
// the format we build the date in
$format = 'Y-m-d';
// get the yesterday in the specified format
$from = date($format, $yesterday);
// get today in the specified format
$to = date($format, $today);
// build the URL
$url = 'https://cloud.aeroqual.com/api/data/AQM65%2017112020-804'.'?from='.$from.'T00:00:00'.'&to='.$to.'T00:00:00'.'&averagingperiod=60&includejournal=false'.;
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'Cookie: .MONOAUTH=C5PBclbeW29kqexXRGTlXaHImDoLhxR/YzALxc44/SZ+KQV2XuMsZps6OJnXMSi56gjRsQ6ED6GIcH7Fk8XCoJ80IrpsTUDPO+Bmf0tVKaPZtIzpwe7ff3QqBKZLFGZK; ASP.NET_SessionId=9F89912F7F571A228B63ACEC; AWSELB=95CB9B4302EC8CCB93BD1C1D5C4630880B3D9B3CCF5F0CE3F60EF45F0604C252A119CAE7D802D28AE24434CB392308307A6E5617B4045026B161BDB6886AF9E5C0388BFFED; AWSELBCORS=95CB9B4302EC8CCB93BD1C1D5C4630880B3D9B3CCF5F0CE3F60EF45F0604C252A119CAE7D802D28AE24434CB392308307A6E5617B4045026B161BDB6886AF9E5C0388BFFED'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
問題:如何格式化我的 URL,以便我收到 24 小時前到現在(當前時間)的數據。 或者如果有人知道,是否可以在 cURL 的 URL 中實現變量。
錯誤:在我的服務器上運行我的 php 代碼時,我收到如下錯誤:
1:無法加載資源:服務器響應狀態為 500() 2:VM265:7146 crbug/1173575,不推薦使用非 JS 模塊文件。 (匿名)@ VM265:7146
此代碼運行完美,但我想獲取從 24 小時前到當前時間的日期和時間值。 :
<?php
$ch = curl_init();
// Configure curl as needed, depending on your application
curl_setopt_array($ch, array(
CURLOPT_URL => "https://cloud.aeroqual.com/api/data/AQM65%2017112020-804?from=2021-1-1T00:00:00&to=2021-2-26T00:00:00&averagingperiod=60&includejournal=false",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'Cookie: .MONOAUTH=C5PBclbeW29kqexXRGTlXaHImDoLhxR/YzALxc44/SZ+KQV2XuMsZps6OJnXMSi56gjRsQ6ED6GIcH7Fk8XCoJ80IrpsTUDPO+Bmf0tVKaPZtIzpwe7ff3QqBKZLFGZK; ASP.NET_SessionId=9F89912F7F571A228B63ACEC; AWSELB=95CB9B4302EC8CCB93BD1C1D5C4630880B3D9B3CCF1DD49CB392B355F68787785EB0EA72F7A4B7F495B9BA3840A89055C0FDEAE769045026B161BDB6886AF9E5C0388BFFED; AWSELBCORS=95CB9B4302EC8CCB93BD1C1D5C4630880B3D9B3CCF1DD49CB392B355F68787785EB0EA72F7A4B7F495B9BA3840A89055C0FDEAE769045026B161BDB6886AF9E5C0388BFFED;'
),
));
// Do the request
$response = curl_exec($ch);
// Cleanup
curl_close($ch);
echo $response;
?>
我是一名初級 Web 開發人員,我對 Api 不太熟悉,如果我的問題格式不正確,我很抱歉。
在 API URL 調用中插入可編輯日期和時間的答案是:
<?php
// Date variables for URL
$to = date("Y-m-d", strtotime("now"));
$yesterday = date("Y-m-d", strtotime("-1 day"));
$to_time = date("H:m:s", strtotime("now"));
$yesterday_time = date("H:m:s", strtotime("-1 day"));
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://xxxxxxxxxx/api/data/XXXX65%2017112020-804?from=".$yesterday."T".$yesterday_time."&to=".$to."T".$to_time."&averagingperiod=60&includejournal=false",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'Cookie: .MONOAUTH=C5PBclbeW29kqexXRGTlXaHImDoLhxR/YzALxc44/SZ+KQV2XuMsZps6OJnXMSi56gjRsQ6ED6GIcH7Fk8XCoJ80IrpsTUDPO+Bmf0tVKaPZtIzpwe7ff3QqBKZLFGZK; ASP.NET_SessionId=9F89912F7F571A228B63ACEC; AWSELB=95CB9B4302EC8CCB93BD1C1D5C4630880B3D9B3CCF5F0CE3F60EF45F0604C252A119CAE7D802D28AE24434CB392308307A6E5617B4045026B161BDB6886AF9E5C0388BFFED; AWSELBCORS=95CB9B4302EC8CCB93BD1C1D5C4630880B3D9B3CCF5F0CE3F60EF45F0604C252A119CAE7D802D28AE24434CB392308307A6E5617B4045026B161BDB6886AF9E5C0388BFFED'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.