Garmin Health Api에서 반환된 결과는 빈 배열입니다.
P粉842215006
P粉842215006 2023-08-30 16:53:05
0
1
593
<p>Garmin의 상태 API를 사용할 때 빈 응답 배열이 표시되고 오류는 표시되지 않으며 빈 배열만 반환됩니다. 혼란스러워서 내 코드는 다음과 같습니다.</p> ; <pre class="brush:php;toolbar:false;">공개 정적 함수 get_garmin_health_data($request 요청) { // dd(date('연월일 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)->timestamp; $start_time = strtotime('-20시간'); $end_time = 시간(); // dd($start_time); // $time = $request->oauth_nonce; $시간 = 시간(); // $post = '{"event":{"type":"message_create","message_create":{"target":{"recipient_id":"123"},"message_data" :{"text":"Hello world"}}}}'; $포스트 = '{}'; $url = 'https://apis.garmin.com/wellness-api/rest/dailies'; $param_string = 'oauth_consumer_key=' . $garmin_consumer_key. '&oauth_nonce=' . $ 시간 . '&oauth_signature_method=' . $sign_method . '&oauth_timestamp=' . $ 시간 . '&oauth_token=' . $twitter_access_token . '&oauth_version=' . $twitter_버전 . '&uploadEndTimeInSeconds=' . $end_time . '&uploadStartTimeInSeconds=' . $start_time; // 为POST生成签name基本字符串 $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_버전 . '''; $url2 = 'https://apis.garmin.com/wellness-api/rest/dailies?uploadStartTimeInSeconds=' . $시작_시간 . '&uploadEndTimeInSeconds=' . $end_time; $curl = 컬_init(); 컬_setopt_array($curl, 배열( 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, ), ))); $응답 = 컬_exec($curl); dd($응답); 컬_닫기($curl); $res = json_decode($response);</pre> <p>请为这个问题提供一个解决方案,如果可能的话, 用 PHP或CURL请求进行回答。</p>
P粉842215006
P粉842215006

모든 응답(1)
P粉478188786

저는 이 Garmin-health API도 작업 중인데 빈 응답(예: [])이 나타납니다. 그러나 나는 그렇게 생각한다! 내 프로필에 활동이 없어서 이런 답변을 받았습니다.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿