You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

OpenNebula XML-RPC API Postman调用教程及连接问题求助

解决OpenNebula XML-RPC API Postman调用问题

先排查连接超时问题

  • 确认OpenNebula XML-RPC服务端口(默认是2633),检查部署时是否修改过端口
  • 测试Postman所在机器与OpenNebula服务器的网络连通性:用telnet <服务器IP> 2633或nc -zv <服务器IP> 2633验证端口是否开放
  • 检查服务器防火墙规则,确保允许Postman所在IP访问2633端口
  • 如果是HTTPS部署,暂时关闭Postman的SSL验证(设置→通用→SSL证书验证→关)测试,生产环境需配置信任证书

处理CSRF Token问题

浏览器访问API URL出现csrftoken提示,说明服务启用了CSRF保护,Postman调用需携带该token:

  1. 发送GET请求到API地址(如http://<服务器IP>:2633/RPC2),从响应的Cookie中提取csrftoken的值
  2. 在POST请求中添加两个请求头:
    • Cookie: csrftoken=<提取到的token值>
    • X-CSRFToken: <提取到的token值>

Postman调用XML-RPC的具体步骤

  1. 设置请求方法为POST,URL填写你的OpenNebula XML-RPC地址
  2. 切换到「Headers」标签,添加以下头部:
    • Content-Type: text/xml
    • 加上上述的Cookie和X-CSRFToken头部
  3. 切换到「Body」标签,选择「raw」,格式选「XML」,输入示例请求体(替换成你的认证信息):
    <?xml version="1.0"?>
    <methodCall>
      <methodName>one.user.info</methodName>
      <params>
        <param>
          <value><string>用户名:密码</string></value>
        </param>
        <param>
          <value><int>0</int></value>
        </param>
      </params>
    </methodCall>
    
    注:OpenNebula API认证支持「用户名:密码」或会话token作为第一个参数

新手学习资源建议

  • 优先参考OpenNebula官方文档的XML-RPC章节,里面有完整的方法列表、参数说明和请求示例
  • 先用curl在命令行验证API可用性,比如:
    curl -X POST http://<服务器IP>:2633/RPC2 \
      -H "Content-Type: text/xml" \
      -H "Cookie: csrftoken=<你的token>" \
      -H "X-CSRFToken: <你的token>" \
      -d '<?xml version="1.0"?><methodCall><methodName>one.user.info</methodName><params><param><value><string>admin:opennebula</string></value></param><param><value><int>0</int></value></param></params></methodCall>'
    
    命令行测试成功后再迁移到Postman配置,更容易定位问题

内容的提问来源于stack exchange,提问作者Sushil More

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 07:05:22