2017-01-05 6 views
0

私はstrava apiを使用してgpxファイルをアップロードしようとしています。私はすでにアクセストークンを持っていると私は、このスクリプトを使用しています:Strava V3 api upload gpx file php

$actual_file= realpath('/.../../myfile.gpx'); 

$url="https://www.strava.com/api/v3/uploads"; 

$postfields = array(
    "activity_type" => "ride", 
    "data_type" => "gpx", 
    "file" => '@' . $actual_file . ";type=application/xml" 
); 

$headers = array('Authorization: Bearer ' . $token); 

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, $url); 
curl_setopt($ch, CURLOPT_POSTFIELDS, $postfields); 
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 

$response = curl_exec ($ch); 
echo $response; 

が、私はstravaから取得応答は、私はあなたがファイルのparamのため"file" => curl_file_create($actual_file)を使用する必要があることが分かった{"message":"Bad Request","errors":[{"resource":"Upload","field":"file","code":"not a file"}]}

答えて

0

です。また、これらのパラメータは古くなっています(the new docをチェックしてください)。

私はこれが誰かを助けることを望みます。これを見ている間にそれを発見しましたPHP wrapper for Strava's API