我想在我的工作中自动完成一些任务。 这意味着,例如,而不是耗费时间记录在RT中,搜索特定的票据,我想借助JavaScript(这是我现在唯一的工具)从简单的HTML表单更新它。
域名如下所示:
mydomain.example.io
和
RTdomain.example.io
示例代码:
var url = "https://RTdomain.example.io/REST/1.0/ticket/1065/edit?user=guest&pass=guest";
var xhr = new XMLHttpRequest();
xhr.open("POST", url, true);
xhr.setRequestHeader('Content-Type', 'text/html');
xhr.send(JSON.stringify({
content: "Content: asdf"
}));
正如您可能立即知道的那样,浏览器并不想让我拨打POST,因为No' Access-Control-Allow-Origin'报头中。
有没有办法可以编辑没有CORS的票证而且不会干扰RT服务器?
如果有帮助,我所拥有的是RT帐户和安全访问令牌。 我也无法关闭浏览器跨域安全性。
在维基百科XMLHttpRequest上可以读到:
CORS协议有几个限制,有两种支持模式。简单模型不允许设置自定义请求标头并省略cookie。此外,仅支持HEAD,GET和POST请求方法,POST仅允许以下MIME类型:" text / plain"," application / x-www-urlencoded"和" multipart / form-data"。只有" text / plain"最初得到支持。另一个模型检测何时请求其中一个非简单功能,并向服务器发送飞行前请求以协商该功能。
那我怎么能理解这个呢?我可以在没有飞行前检查的情况下使用文本/纯文本类型进行POST吗?
我很抱歉,如果我听起来像总菜鸟,但我读了很多关于这个主题的事情,它让我更加困惑。我没有多少api经验,我只做了一个与GitHub api配合使用的Android应用程序,用javascript处理它对我来说很头疼。
这是他们的API维基: RT wiki 任何人都有这个简洁的解决方案?谢谢。