2016-05-16 7 views
1

iOSアプリケーションからGoogle Cloud Storage Bucketに画像をアップロードしたいとします。私は画像を追加するためにhttp postメソッドを使用しています。しかし、Googleドキュメントでは多くのことが使われており、正確性が不明なため、http Postメソッドのコードで使用する正確なURIを知りた​​いと思います。バケツの名前がtest1212testの場合、正確なURIは何ですか?Google Cloud Bucketの正確なURIは何ですか?

答えて

1

Request URIsを参照してください - 次のいずれかが動作するはずです:

私が探していたものではありません
test1212test.storage.googleapis.com 
storage.googleapis.com/test1212test 
storage-upload.googleapis.com/test1212test 
test1212test.storage-upload.googleapis.com 
1

。それは私の目的が私の電話からgoogleのバケットに写真をまっすぐにアップロードすることだったので、それはうまくいかなかったが、Googleドキュメントにあるものである。その代わりに、私のPython APIで、私はblobstoreによって生成されたuploadURLを返し、それを私のiOSアプリケーションに送り、正確なアップロードURLを使用し、それがうまくいった。 PythonのAPIで

USER_BUCKET = '%s-%d-%s-%d' % (first, age, email, now) 

     my_upload_url = blobstore.create_upload_url('/upload', 
               gs_bucket_name=USER_BUCKET) 

私はその後、私は彼らの独特のアップロードURLを作成し、その後、独自のバケット名を作りました。 iOSアプリで

NSString *uploadUrl = [[NSUserDefaults standardUserDefaults] stringForKey:@"uploadUrl"]; 
//This is your version 
AFHTTPSessionManager *manager = [AFHTTPSessionManager manager]; 

[manager POST:uploadUrl parameters:nil constructingBodyWithBlock:^(id<AFMultipartFormData> _Nonnull formData) { 

    NSData* imageData = UIImagePNGRepresentation(_image); 
    [formData appendPartWithFileData:imageData name:@"file" fileName:@"testImages" mimeType:@"image/jpeg"]; 
} progress:nil success:^(NSURLSessionTask *task, id responseObject) { 
    NSLog(@"Response: %@", responseObject); 
} failure:^(NSURLSessionTask *operation, NSError *error) { 
    NSLog(@"Error: %@", error); 
}]; 

uploadUrlはPythonで作成されたものであり、私はちょうどユーザーNSUsersDefaultsにそれを保存しました。

関連する問題