ビルドを自動化するためにTestFlightのアップロードAPIを試しています。ドキュメントは次のとおりです:https ://testflightapp.com/api/doc/
これは、私がテストして機能させた最小限のcurlコマンドラインリクエストです。
.\curl.exe http://testflightapp.com/api/builds.json
-F file=@MyFileName.ipa
-F api_token='myapitoken' -F team_token='myteamtoken'
-F notes='curl test'
私はそれを次のようにC#に変換しようとしました:
var uploadRequest = WebRequest.Create("http://testflightapp.com/api/builds.json") as HttpWebRequest;
uploadRequest.Method = "POST";
uploadRequest.ContentType = "multipart/form-data";
var postParameters = string.Format("api_token={0}&team_token={1}¬es=autobuild&file=", TESTFLIGHT_API_TOKEN, TESTFLIGHT_TEAM_TOKEN);
var byteParameters = Encoding.UTF8.GetBytes(postParameters);
var ipaData = File.ReadAllBytes(IPA_PATH);
uploadRequest.ContentLength = byteParameters.Length + ipaData.Length;
var requestStream = uploadRequest.GetRequestStream();
requestStream.Write(byteParameters, 0, byteParameters.Length);
requestStream.Write(ipaData, 0, ipaData.Length);
requestStream.Close();
var uploadResponse = uploadRequest.GetResponse();
残念ながら、私はそれ以上の情報GetResponse()
を取得しません。(500) Internal Server Error
postParametersのデータを'
sでラップする必要があるかどうかはわかりませんが、両方の方法で試しました。また、自分のコンテンツタイプが正しいかどうかもわかりません。私も試しましapplication/x-www-form-urlencoded
たが、効果はありませんでした。
どんな助けでも大歓迎です。