我可以根据以下示例使用XML REST API创建缺陷:https://rally1.rallydev.com/slm/doc/webservice/rest_xml.jsp
但是,我无法使用jquery和他们的JSON api做同样的事情: 这就是我提交PUT以创建缺陷的方法:
var defectData = JSON.stringify(
{
Description: 'bla bla bla bla',
Name: 'This is the defect name',
Priority: 'None',
ReleaseNote: 'false',
Severity: 'Major Problem',
State: 'Open',
Owner: "https://<rallysite>/slm/webservice/1.28/user/<myuserid>.js"
}
);
$.ajax({
url: "https://<rallysite>/slm/webservice/1.28/defect/create",
type: 'PUT',
mimeType: 'application/javascript',
data: { 'Defect': defectData },
dataType: 'json',
username: "<myusername>",
password: "<mypassword>",
success: function(data){
console.log(data);
}
});
我没有看到PUT请求是通过firefox上的firebug或通过IE中的开发工具提交的。我也没有看到任何错误。 我尝试了一个简单的GET请求来在Rally中查询我的项目,这样就可以了。
不确定我做错了什么,会很感激帮助。谢谢!
答案 0 :(得分:1)
直接来自jQuery docs:
typeString
Default: 'GET'
The type of request to make ("POST" or "GET"), default is "GET". Note: Other HTTP request methods, such as PUT and DELETE, can also be used here, but they are not supported by all browsers.
您可能根本无法点击任何PUT
或DELETE
个端点,尤其是在您需要支持IE时。
答案 1 :(得分:0)
另外,您可能会发现Rally App SDK是从Rally的Rest Api访问数据的有用工具。
SDK是使用Dojo创建的,因为它是底层框架,但可以很容易地与JQuery一起使用。 AppSDK在所有主流浏览器上进行了测试,并提供了与Rally数据交互的简化界面。