上传文件时,Google文档API会返回503服务不可用.有什么变化?

Men*_*hak 6 java android google-docs-api

我的应用程序使用了Google Docs API.直到最近,使用HTTP端点的上传工作正常.最近,上传突然开始出错.第一次创建会话(返回可恢复的URL)的调用工作正常,并返回一个可恢复的URL.然后尝试将文件内容发送到可恢复的URL会引发503.

抛出错误的代码的相关部分是这样的:

        URL url = new URL(resumableFileUploadUrl);
        conn = (HttpURLConnection) url.openConnection();
        conn.addRequestProperty("client_id", OAuth2Client.CLIENT_ID);
        conn.addRequestProperty("client_secret", OAuth2Client.CLIENT_SECRET);
        conn.setRequestProperty("Authorization", "OAuth " + GetAuthToken());

        conn.setRequestProperty("X-Upload-Content-Length", String.valueOf(fileContents.length())); //back to 0
        conn.setRequestProperty("X-Upload-Content-Type", "text/xml");
        conn.setRequestProperty("Content-Type", "text/xml");
        conn.setRequestProperty("Content-Length", String.valueOf(fileContents.length()));
        conn.setRequestProperty("Slug", fileName);

        if(isUpdate)
        {
            conn.setRequestProperty("If-Match", "*");
            conn.setRequestMethod("PUT");
        }
        else
        {
            conn.setRequestMethod("POST");
        }

        conn.setRequestProperty("GData-Version", "3.0");
        conn.setRequestProperty("User-Agent", "GPSLogger for Android");


        conn.setUseCaches(false);
        conn.setDoInput(true);
        conn.setDoOutput(true);

        DataOutputStream wr = new DataOutputStream(
                conn.getOutputStream());
        wr.writeBytes(fileContents);
        wr.flush();
        wr.close();

        int code = conn.getResponseCode();
        newLocation = conn.getHeaderField("location");
Run Code Online (Sandbox Code Playgroud)

上述代码既用于创建会话以获取可恢复的URL,也将文件内容发布到可恢复的URL.

这是一部分这个 Android的活动.我包含了原始活动的链接,因为通过简单地克隆存储库可能很容易重现问题.该守则一直保持不变.

最近有什么改变会导致这种情况吗?

我想避免现在使用Google Drive的API,因为我没有更改任何代码,并且在该领域的一些其他应用程序中使用了相同的代码.

Ale*_*kin 0

最烦人的 \xe2\x80\x9cfeatures\xe2\x80\x9d 之一是请求图像时未记录的速率限制,每个请求都必须经过身份验证。速率限制似乎约为 10/s。

\n