通过GLPI API创建工单任务遇异常:无返回且无任务显示
解决建议
核对API端点路径:先确认GLPI API的工单解决方案创建端点是否正确。不同GLPI版本的API路径可能有差异,官方标准端点是
/Ticket/{id}/ITILSolution,但部分版本可能需要用/TicketSolution这类路径,对照你使用的GLPI版本文档确认。查看HTTP响应状态码:你现在的代码只捕获了WebException,没处理成功响应的状态码。可以在
Using response块里加一行打印状态码:Console.WriteLine("响应状态码: " & response.StatusCode)如果是
204 No Content,说明请求已经成功处理但没有返回内容;要是其他状态码比如400、403,就对应排查——400是请求参数错误,403是权限不足。检查JSON必填字段:确保你的
JsonString包含GLPI要求的必填项,比如content(解决方案内容)、users_id(关联用户ID),而且字段名要和API要求完全一致(大小写敏感)。举个合规的例子:{"content": "测试解决方案内容", "users_id": 11}验证会话用户权限:确认
GetSessionCode对应的账号,有没有创建工单解决方案的权限。能创建工单不代表能加解决方案,去GLPI后台的权限设置里查一下。确保请求数据全发送:虽然Using块会自动处理流,但可以在
requestStream.Write之后加一行requestStream.Flush(),保证所有数据都发送到服务器:Using requestStream As Stream = request.GetRequestStream() requestStream.Write(jsonBytes, 0, jsonBytes.Length) requestStream.Flush() End Using开GLPI API日志查细节:去GLPI后台的
设置 > 常规 > 日志里开启API日志,能看到请求的详细参数、权限校验过程,帮你找到隐性的错误。
内容的提问来源于stack exchange,提问作者sander wijnen
相关产品推荐
相关产品推荐

