git - 无法在Gradle中使用Curl访问Github API

标签 git curl github gradle

我正在尝试访问GitHub API以从特定存储库中获取提交。我在curl中使用gradle命令。

问题:
在gradle任务中,从命令行成功执行/工作的相同curl命令失败。

命令:

curl  -X GET -H "Authorization:token <TOKEN>" https://api.github.com/repos/<reponame_with_slash>/commits

奇怪的是,该命令可以在命令行上顺利运行,但不能在gradle脚本中运行。这是我的gradle代码。

Gradle 代码:
def command = "curl  -X GET -H \"Authorization:token <TOKEN>\" https://api.github.com/repos/<reponame_with_slash>/commits"

println command
def proc = command.execute()

proc.waitFor()
if (proc.exitValue() != 0) {
 println "stderr: ${proc.err.text}"
   println "stdout: ${proc.in.text}"
   throw new GradleException("failed with return code " + proc.exitValue())
   }
println proc.text

最佳答案

我知道了。

问题在于串联。我只是重新编码了那行
['curl','-X','POST',<url>,'-H',<authHeader>,'-d',<payload>].execute().text
而且有效。

关于git - 无法在Gradle中使用Curl访问Github API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52410431/

相关文章:

android - 如何提取 tar (ed) Android 存储库?

api - Github 使用 2 因素身份验证创建 token

node.js - cURL 的 --form 的 axios 或 ajax 等效项是什么?

linux - 如何使用 curl (bash) 将文件上传到 dbinbox.com?

java - Java中通过Jgit忽略文件或文件夹

git - 将 svn 转储导出到 git 或 github

git - 应用 stash 提交 '...' 失败,原因是“正在应用...eclipse 中的 egit 错误

node.js - 使用 simple-git 进行 Nodejs 浅 git 克隆

git backout master,推送到分支,稍后进入 master

git - merge 两个github账户