Garmin Health API によって返される結果は空の配列です
P粉842215006
P粉842215006 2023-08-30 16:53:05
0
1
628
<p>Garmin のヘルス API を使用すると、空の応答配列が返され、エラーは表示されず、空の配列のみが返されます。混乱していて、解決策が見つかりません。コードは次のとおりです: </p> ; <pre class="brush:php;toolbar:false;">パブリック静的関数 get_garmin_health_data(Request $request) { // dd(date('Y-m-d H:i:s')); $garmin_consumer_key = env('CONSUMERKEY'); $garmin_consumer_secret = env('CONSUMERSECRET'); $twitter_access_token = $request->oauth_token ?? ''; $twitter_access_token_secret = $request->oauth_token_secret ?? ''; $twitter_version = '1.0'; $sign_method = 'HMAC-SHA1'; date_default_timezone_set('アジア/コルカタ'); // $end_time = Carbon::now()->timestamp; // 1552296328 のようなタイムスタンプを生成します // $start_time = Carbon::now()->subDays(1)->タイムスタンプ; $start_time = strtotime('-20 時間'); $end_time = 時間(); // dd($start_time); // $time = $request->oauth_nonce; $time = 時間(); // $post = '{"event":{"type":"message_create","message_create":{"target":{"recipient_id":"123"},"message_data" :{"テキスト":"Hello world"}}}}'; $post = '{}'; $url = 'https://apis.garmin.com/wellness-api/rest/dailies'; $param_string = 'oauth_consumer_key=' 。 $garmin_consumer_key 。 '&oauth_nonce=' 。 $time 。 '&oauth_signature_method=' 。 $sign_method 。 '&oauth_timestamp=' 。 $time 。 '&oauth_token=' 。 $twitter_access_token 。 '&oauth_version=' 。 $twitter_version 。 '&uploadEndTimeInSeconds=' 。 $end_time 。 '&uploadStartTimeInSeconds=' 。 $start_time; // POST用に生成签名基本文字列 $base_string = 'GET&' 。 rawurlencode($url) 。 「&」 。 rawurlencode($param_string); // dd($base_string); $sign_key = rawurlencode($garmin_consumer_secret) 。 「&」 。 rawurlencode($twitter_access_token_secret); // 唯一生成签名 $signature =base64_encode(hash_hmac('sha1', $base_string, $sign_key, true)); $curl_header = 'OAuth oauth_consumer_key='' 。 rawurlencode($garmin_consumer_key) 。 '"、' 。 'oauth_nonce="' 。 rawurlencode($time) 。 '"、' 。 「oauth_signature=」 。 rawurlencode($signature) 。 '"、' 。 「oauth_signature_method=」 。 $sign_method 。 '"、' 。 'oauth_timestamp="' 。 rawurlencode($time) 。 '"、' 。 「oauth_token=」 。 rawurlencode($twitter_access_token) 。 '"、' 。 「oauth_version=」 。 $twitter_version 。 ''''; $url2 = 'https://apis.garmin.com/wellness-api/rest/dailies?uploadStartTimeInSeconds=' 。 $start_time 。 '&uploadEndTimeInSeconds=' 。 $end_time; $curl =curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => $url2、 CURLOPT_RETURNTRANSFER =>真実、 CURLOPT_ENCODING => ”、 CURLOPT_MAXREDIRS => 10、 CURLOPT_TIMEOUT => 0、 CURLOPT_FOLLOWLOCATION =>真実、 CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1、 CURLOPT_CUSTOMREQUEST => '得る'、 CURLOPT_HTTPHEADER =>配列( '認可:' 。 $curl_header、 )、 )); $response =curl_exec($curl); dd($response); curl_close($curl); $res = json_decode($response);</pre> <p>この問題に対しては、可能であれば PHP または CURL リクエストを使用して回答する解決策を提供します。
P粉842215006
P粉842215006

全員に返信(1)
P粉478188786

私もこの Garmin-health API を扱っていますが、空の応答 (例: []) が返されます。 でも私はそう思います!私のプロフィールには何もアクティビティがないため、この応答が返されます。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート