whlsxl / firim

Upload ipa binary to fir.im in fastlane chain
MIT License
59 stars 10 forks source link

Upload binary to Qiniu error #12

Closed xwartz closed 6 years ago

xwartz commented 6 years ago

Hi, when I upload Android apk to fir, always get error

Upload binary to Qiniu error {"error"=>"{\"callback_url\":\"http://api.fir.im/auth/qiniu/callback?parent_id=5a841c16959d6907fae934dc\\u0026timestamp=1527316346\\u0026sign=f73d5\\u0026user_id=57d39481ca87a87db3000616\",\"callback_bodyType\":\"application/x-www-form-urlencoded\",\"callback_body\":\"key=27e32706c1d2653f16a3b255184836080fd152e0.apk\\u002\"}"}
....

Actually, it has been uploaded successfully

whlsxl commented 6 years ago

I think this is qiniu's error message, Fir.im document show, Qiniu will response when the upload complete successful

# status: 201

{ "is_completed": true }

But this got an error

xwartz commented 6 years ago

This is weird, iOS does not have this issue.

whlsxl commented 6 years ago

@xwartz I test all conditions, with all infos or just key token file, but never reproduce this error. If you still have this error,

--- a/lib/firim/runner.rb
+++ b/lib/firim/runner.rb
@@ -158,7 +158,7 @@ module Firim
       UI.message "Start upload #{self.options[:app_name]} binary..."
       response = binary_conn.post binary_info['upload_url'], params
       unless response.body['is_completed']
-        raise UI.user_error!("Upload binary to Qiniu error #{response.body}")
+        raise UI.user_error!("Upload binary to Qiniu error #{response.body} params #{params}")
       end
       UI.success 'Upload binary successed!'
     end

insert this and build to print all params

xwartz commented 6 years ago

Hi, I printed all params:

{
  "key"=>"2160dd82ff48a677eec3065b31b0b47a94db4b2a.apk", 
  "token"=>"LOvmia8oXF4xnLh0IdH05XMYpH6ENHNpARlmPc-T:hzl_Ye00e_aiscPVGTXVDOj1dC8=:eyJzY29wZSI6InByby1hcHA6MjE2MGRkODJmZjQ4YTY3N2VlYzMwNjViMzFiMGI0N2E5NGRiNGIyYS5hcGsiLCJjYWxsYmFja1VybCI6Imh0dHA6Ly9hcGkuZmlyLmltL2F1dGgvcWluaXUvY2FsbGJhY2s_cGFyZW50X2lkPTVhODQxYzE2OTU5ZDY5MDdmYWU5MzRkY1x1MDAyNnRpbWVzdGFtcD0xNTI3NDM0MTYwXHUwMDI2c2lnbj01MWQ0Mlx1MDAyNnVzZXJfaWQ9NTdkMzk0ODFjYTg3YTg3ZGIzMDAwNjE2IiwiY2FsbGJhY2tCb2R5Ijoia2V5PSQoa2V5KVx1MDAyNmV0YWc9JChldGFnKVx1MDAyNmZzaXplPSQoZnNpemUpXHUwMDI2Zm5hbWU9JChmbmFtZSlcdTAwMjZvcmlnaW49JCh4Om9yaWdpbilcdTAwMjZuYW1lPSQoeDpuYW1lKVx1MDAyNmJ1aWxkPSQoeDpidWlsZClcdTAwMjZ2ZXJzaW9uPSQoeDp2ZXJzaW9uKVx1MDAyNmlzX3VzZV9tcWM9JCh4OmlzX3VzZV9tcWMpXHUwMDI2Y2hhbmdlbG9nPSQoeDpjaGFuZ2Vsb2cpXHUwMDI2cmVsZWFzZV90eXBlPSQoeDpyZWxlYXNlX3R5cGUpXHUwMDI2ZGlzdHJpYnV0aW9uX25hbWU9JCh4OmRpc3RyaWJ1dGlvbl9uYW1lKVx1MDAyNnN1cHBvcnRlZF9wbGF0Zm9ybT0kKHg6c3VwcG9ydGVkX3BsYXRmb3JtKVx1MDAyNm1pbmltdW1fb3NfdmVyc2lvbj0kKHg6bWluaW11bV9vc192ZXJzaW9uKVx1MDAyNnVpX3JlcXVpcmVkX2RldmljZV9jYXBhYmlsaXRpZXM9JCh4OnVpX3JlcXVpcmVkX2RldmljZV9jYXBhYmlsaXRpZXMpXHUwMDI2dWlfZGV2aWNlX2ZhbWlseT0kKHg6dWlfZGV2aWNlX2ZhbWlseSkiLCJkZWFkbGluZSI6MTUyNzQzNzc2MCwidXBob3N0cyI6WyJodHRwOi8vdXAucWluaXUuY29tIiwiaHR0cDovL3VwbG9hZC5xaW5pdS5jb20iLCItSCB1cC5xaW5pdS5jb20gaHR0cDovLzE4My4xMzEuNy4xOCJdLCJnbG9iYWwiOmZhbHNlfQ==", 
  "file"=>#<UploadIO:0x007ff4436e7348 
  @content_type="application/octet-stream", 
  @original_filename="prod-release.apk", 
  @local_path="app/build/outputs/apk/prod/release/prod-release.apk", 
  @io=#<File:app/build/outputs/apk/prod/release/prod-release.apk>, 
  @opts={}>, "x:name"=>"imToken", "x:version"=>"2.0.0", "x:build"=>"166", "x:changelog"=>"- VERSION: INTERNATIONAL\n- ENV: \n\n- Remove unused code"
}
xwartz commented 6 years ago

发现上传之后有两个 apk,第一个是个空的,后面会有一个正常的

xwartz commented 6 years ago

今天发现上传正常了

whlsxl commented 6 years ago

@xwartz 完全正常了? 我看了官方的cli 应该是API改了又改回了吧

xwartz commented 6 years ago

@whlsxl 嗯 完全正常了,不过我还没有去看官方那边的修改