Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Go 上传请求无效_Go_Google Bigquery_Google Api Go Client - Fatal编程技术网

Go 上传请求无效

Go 上传请求无效,go,google-bigquery,google-api-go-client,Go,Google Bigquery,Google Api Go Client,当我尝试使用 我的作业描述符如下所示: j := &bigquery.Job{ Configuration: &bigquery.JobConfiguration{ Load: &bigquery.JobConfigurationLoad{ DestinationTable: &bigquery.TableReference{ projectId, "x

当我尝试使用

我的作业描述符如下所示:

j := &bigquery.Job{
    Configuration: &bigquery.JobConfiguration{
        Load: &bigquery.JobConfigurationLoad{
            DestinationTable: &bigquery.TableReference{
                projectId,
                "xyz",
                name + "_" + yyyymmdd,
            },
            SkipLeadingRows: 1,
            FieldDelimiter:  "|",
            MaxBadRecords:   3,
            Schema: &bigquery.TableSchema{
                []*bigquery.TableFieldSchema{
                    {Name: "f1", Type: "STRING"},
                    {Name: "f2", Type: "STRING"},
                    {Name: "f3", Type: "STRING"},
                    {Name: "f4", Type: "STRING"},
                    {Name: "f5", Type: "STRING"},
                    {Name: "f6", Type: "STRING"},
                    {Name: "f7", Type: "STRING"},
                    {Name: "f8", Type: "STRING"},
                    {Name: "f9", Type: "STRING"},
                    {Name: "f10", Type: "STRING"},
                    {Name: "f11", Type: "STRING"},
                    {Name: "f12", Type: "STRING"},
                    {Name: "f13", Type: "STRING"},
                    {Name: "f14", Type: "STRING"},
                    {Name: "f15", Type: "STRING"},
                    {Name: "f16", Type: "STRING"},
                    {Name: "f17", Type: "STRING"},
                },
            },
        },
    },
}
FWIW,使用这个库的其他调用工作正常,所以我排除了oauth问题,等等

编辑:我在请求发出之前捕获了它。请注意,这是在http.Client能够添加oauth头之前。实际请求很大,因此我缩短了它并删除了标识符

POST /upload/bigquery/v2/projects/.../jobs HTTP/1.1
Host: www.googleapis.com
User-Agent: google-api-go-client/0.5
Content-Length: 56369074
Content-Type: multipart/related; boundary=2220cacc03485c8143026fe3f0c40dcb1aaec8c8c2426e69adf620fc12cf

--2220cacc03485c8143026fe3f0c40dcb1aaec8c8c2426e69adf620fc12cf
Content-Type: application/json

{"configuration":{"load":{"destinationTable":{"projectId":"...","datasetId":"...","tableId":"..."},"skipLeadingRows":1,"fieldDelimiter":"|","maxBadRecords":3,"schema":{"fields":[{"name":"...","type":"STRING"},{"name":"...","type":"STRING"},{"name":"...","type":"STRING"},{"name":"...","type":"STRING"},{"name":"...","type":"STRING"},{"name":"...","type":"STRING"},{"name":"...","type":"STRING"},{"name":"...","type":"STRING"},{"name":"...","type":"STRING"},{"name":"...","type":"STRING"},{"name":"...","type":"STRING"},{"name":"...","type":"STRING"},{"name":"...","type":"STRING"},{"name":"...","type":"STRING"},{"name":"...","type":"STRING"},{"name":"...","type":"STRING"},{"name":"...","type":"STRING"}]}}}}

--2220cacc03485c8143026fe3f0c40dcb1aaec8c8c2426e69adf620fc12cf
Content-Type: text/plain; charset=utf-8

H0|H1|H2|H3|H4|H5|H6|H7|H8|H9|H10|H11|H12|H13|H14|H15|H16
f0_0|f0_1|f0_2|f0_3|f0_4|f0_5|f0_6|f0_7|f0_8|f0_9|f0_10|f0_11|f0_12|f0_13|f0_14|f0_15|f0_16
f1_0|f1_1|f1_2|f1_3|f1_4|f1_5|f1_6|f1_7|f1_8|f1_9|f1_10|f1_11|f1_12|f1_13|f1_14|f1_15|f1_16
# Three lines
# of comments
# in the trailer

--2220cacc03485c8143026fe3f0c40dcb1aaec8c8c2426e69adf620fc12cf--

让我先警告一下,我不是围棋专家。 也就是说,问题似乎出在你上传的数据上。看起来您正在执行媒体上载请求,因为您在作业配置中没有提供源Google存储路径,并且您发送的错误来自媒体上载程序


但是,您没有显示对的调用--如何设置媒体字段?你能验证它是否是有效的数据,或者尝试使用虚拟数据吗?

让我先警告一下,我不是围棋专家。 也就是说,问题似乎出在你上传的数据上。看起来您正在执行媒体上载请求,因为您在作业配置中没有提供源Google存储路径,并且您发送的错误来自媒体上载程序


但是,您没有显示对的调用--如何设置媒体字段?您可以验证它是否为有效数据,或者尝试使用虚拟数据吗?

结果表明,这是由库中的错误导致的,该错误没有发送所需的“uploadType”查询参数。有关修复该错误的修补程序,请参阅

然而,这暴露了库中的另一个bug,我目前正与作者一起修复该bug。我将在修复程序启动后更新此答案


编辑:截至,上述错误已修复。

结果表明,这是由库中的错误导致的,该错误未发送所需的“uploadType”查询参数。有关修复该错误的修补程序,请参阅

然而,这暴露了库中的另一个bug,我目前正与作者一起修复该bug。我将在修复程序启动后更新此答案


编辑:截至,上述错误已修复。

我确实在代码中调用了JobInsertCall.Media。在库进行调用之前,我甚至入侵了对http.Request.Write()的调用,并且可以看到MIME多部分负载至少看起来是正常的。您能否共享通过http请求发送的发布数据(编辑授权头)?请参阅上面的编辑以获取请求。如果你能告诉我怎么给你,我可以给你原始的要求。乔丹,谢谢你看这个。最后这是图书馆里的一个bug。有关详细信息,请参阅我的答案。我确实在代码中调用了JobInsertCall.Media。在库进行调用之前,我甚至入侵了对http.Request.Write()的调用,并且可以看到MIME多部分负载至少看起来是正常的。您能否共享通过http请求发送的发布数据(编辑授权头)?请参阅上面的编辑以获取请求。如果你能告诉我怎么给你,我可以给你原始的要求。乔丹,谢谢你看这个。最后这是图书馆里的一个bug。请查看我的答案以了解详细信息。这些链接似乎不再起作用,您能告诉我们需要哪个查询参数和哪个值吗?如果你能为我们提供一个更新的链接,那就更好了。链接似乎适合我。第一个指向一个补丁,它在第1490行添加了一行“params.Set”(“uploadType”,“multipart”)”。第二个对ConditionallyIncludeMedia进行了一些更改(您需要单击“diff”链接来查看这些链接)。这些链接似乎不再起作用,您能告诉我们需要哪个查询参数和哪个值吗?如果你能为我们提供一个更新的链接,那就更好了。链接似乎适合我。第一个指向一个补丁,它在第1490行添加了一行“params.Set”(“uploadType”,“multipart”)”。第二个对ConditionallyIncludeMedia进行了一些更改(您需要单击“diff”链接查看这些更改)
POST /upload/bigquery/v2/projects/.../jobs HTTP/1.1
Host: www.googleapis.com
User-Agent: google-api-go-client/0.5
Content-Length: 56369074
Content-Type: multipart/related; boundary=2220cacc03485c8143026fe3f0c40dcb1aaec8c8c2426e69adf620fc12cf

--2220cacc03485c8143026fe3f0c40dcb1aaec8c8c2426e69adf620fc12cf
Content-Type: application/json

{"configuration":{"load":{"destinationTable":{"projectId":"...","datasetId":"...","tableId":"..."},"skipLeadingRows":1,"fieldDelimiter":"|","maxBadRecords":3,"schema":{"fields":[{"name":"...","type":"STRING"},{"name":"...","type":"STRING"},{"name":"...","type":"STRING"},{"name":"...","type":"STRING"},{"name":"...","type":"STRING"},{"name":"...","type":"STRING"},{"name":"...","type":"STRING"},{"name":"...","type":"STRING"},{"name":"...","type":"STRING"},{"name":"...","type":"STRING"},{"name":"...","type":"STRING"},{"name":"...","type":"STRING"},{"name":"...","type":"STRING"},{"name":"...","type":"STRING"},{"name":"...","type":"STRING"},{"name":"...","type":"STRING"},{"name":"...","type":"STRING"}]}}}}

--2220cacc03485c8143026fe3f0c40dcb1aaec8c8c2426e69adf620fc12cf
Content-Type: text/plain; charset=utf-8

H0|H1|H2|H3|H4|H5|H6|H7|H8|H9|H10|H11|H12|H13|H14|H15|H16
f0_0|f0_1|f0_2|f0_3|f0_4|f0_5|f0_6|f0_7|f0_8|f0_9|f0_10|f0_11|f0_12|f0_13|f0_14|f0_15|f0_16
f1_0|f1_1|f1_2|f1_3|f1_4|f1_5|f1_6|f1_7|f1_8|f1_9|f1_10|f1_11|f1_12|f1_13|f1_14|f1_15|f1_16
# Three lines
# of comments
# in the trailer

--2220cacc03485c8143026fe3f0c40dcb1aaec8c8c2426e69adf620fc12cf--