使用 rally-node 在讨论中创建 ConverationPost
Creating ConverationPost in discussion using rally-node
如何在现有用户故事中创建 ConverationPost?
我似乎无法正确理解语法:
const create = {
type: 'ConversationPost',
data: {
Text: 'api test comment',
Artifact: '/hierarchicalrequirement/287838839156'
}
};
restApi.create(create)
.then(result => {
console.log(result);
})
.catch(error => {
console.error(error);
})
错误总是:
{ Error: /ConversationPost/create: 401! body=undefined
at generateError (/Users/ts/Sites/node/tests/node_modules/rally/dist/request.js:38:11)
at Request._callback (/Users/ts/Sites/node/tests/node_modules/rally/dist/request.js:114:20)
at Request.self.callback (/Users/ts/Sites/node/tests/node_modules/request/request.js:185:22)
at emitTwo (events.js:126:13)
at Request.emit (events.js:214:7)
at Request.<anonymous> (/Users/ts/Sites/node/tests/node_modules/request/request.js:1161:10)
at emitOne (events.js:116:13)
at Request.emit (events.js:211:7)
at Gunzip.<anonymous> (/Users/ts/Sites/node/tests/node_modules/request/request.js:1083:12)
at Object.onceWrapper (events.js:313:30) errors: [ '/ConversationPost/create: 401! body=undefined' ] }```
当我在使用 Rally GUI 手动创建 post 的同时查看开发工具时,我在请求正文中看到了这个:
{
"ConversationPost": {
"Text": "testing",
"Artifact": "/hierarchicalrequirement/287838839156"
}
}
有人知道怎么做吗?
编辑:
将 request
debug 设置为 true 在请求中显示了这一点,看起来是正确的:
json:
{ ConversationPost:
{ Text: 'api test comment',
Artifact: '/hierarchicalrequirement/287838839156' } },
gzip: true,
url: 'https://rally1.rallydev.com/slm/webservice/v2.0/ConversationPost/create',
qs: {},
callback: [Function],
method: 'POST' }
我应该补充一下 401 看起来很奇怪,因为我可以查询这个用户故事。
我还注意到来自 rally 节点模块的请求是 POST 请求,但在我的浏览器中 GUI 执行 PUT 请求?
事实证明这是正确的。烦人的小字是 "ALM WSAPI Read-only" 让 Rally 在配置你的 API 键时忽略第二个设置。
401 错误对应于 "access denied",也就是密钥或密钥权限有问题。
如何在现有用户故事中创建 ConverationPost?
我似乎无法正确理解语法:
const create = {
type: 'ConversationPost',
data: {
Text: 'api test comment',
Artifact: '/hierarchicalrequirement/287838839156'
}
};
restApi.create(create)
.then(result => {
console.log(result);
})
.catch(error => {
console.error(error);
})
错误总是:
{ Error: /ConversationPost/create: 401! body=undefined
at generateError (/Users/ts/Sites/node/tests/node_modules/rally/dist/request.js:38:11)
at Request._callback (/Users/ts/Sites/node/tests/node_modules/rally/dist/request.js:114:20)
at Request.self.callback (/Users/ts/Sites/node/tests/node_modules/request/request.js:185:22)
at emitTwo (events.js:126:13)
at Request.emit (events.js:214:7)
at Request.<anonymous> (/Users/ts/Sites/node/tests/node_modules/request/request.js:1161:10)
at emitOne (events.js:116:13)
at Request.emit (events.js:211:7)
at Gunzip.<anonymous> (/Users/ts/Sites/node/tests/node_modules/request/request.js:1083:12)
at Object.onceWrapper (events.js:313:30) errors: [ '/ConversationPost/create: 401! body=undefined' ] }```
当我在使用 Rally GUI 手动创建 post 的同时查看开发工具时,我在请求正文中看到了这个:
{
"ConversationPost": {
"Text": "testing",
"Artifact": "/hierarchicalrequirement/287838839156"
}
}
有人知道怎么做吗?
编辑:
将 request
debug 设置为 true 在请求中显示了这一点,看起来是正确的:
json:
{ ConversationPost:
{ Text: 'api test comment',
Artifact: '/hierarchicalrequirement/287838839156' } },
gzip: true,
url: 'https://rally1.rallydev.com/slm/webservice/v2.0/ConversationPost/create',
qs: {},
callback: [Function],
method: 'POST' }
我应该补充一下 401 看起来很奇怪,因为我可以查询这个用户故事。
我还注意到来自 rally 节点模块的请求是 POST 请求,但在我的浏览器中 GUI 执行 PUT 请求?
事实证明这是正确的。烦人的小字是 "ALM WSAPI Read-only" 让 Rally 在配置你的 API 键时忽略第二个设置。
401 错误对应于 "access denied",也就是密钥或密钥权限有问题。