我正在尝试编写一个生锈脚本,它使用github访问令牌将具有给定名称、标签和正文的问题提交到特定的存储库。我找到了github-rs和八爪蟹,但不知道这个确切的功能是如何工作的。
UPDATE这里是使用生锈卷曲的代码:
use std::io::Read;
use curl::easy::{Easy, List};
fn main() {
let mut data = r#"{
"title": "Found a bug",
"body": "I'm having a problem with this.",
"labels": [
"bug"
]
}"#.as_bytes();
let mut easy = Easy::new();
easy.url("https://api.github.com").unwrap();
let mut list = List::new();
list.append("Authorization: token TOKEN_HERE").unwrap();
easy.http_headers(list).unwrap();
easy.perform().unwrap();
easy.post(true).unwrap();
easy.post_field_size(data.len() as u64).unwrap();
let mut transfer = easy.transfer();
transfer.read_function(|buf| {
Ok(data.read(buf).unwrap_or(0))
}).unwrap();
transfer.perform().unwrap();
}发布于 2020-08-15 20:15:57
如果这些librairies不包括一个简单的方法,您可以回到alexcrichton/curl-rust
它确实允许您添加自定义标头,包括您可以看到的"Authorization: token MY_TOKEN_NUMBERS" 用在这里,这将对您进行身份验证。
从此,您的curl调用(在生锈中)可以使用GitHub API“创建问题”端点。
POST /repos/:owner/:repo/issues根据这些数据:
{
"title": "Found a bug",
"body": "I'm having a problem with this.",
"assignees": [
"octocat"
],
"milestone": 1,
"labels": [
"bug"
]
}https://stackoverflow.com/questions/63430323
复制相似问题