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

QSYS2.HTTP_GET代理与请求头配置示例求助

在IBM i的QSYS2.HTTP_GET中配置请求头与代理的可行示例

问题背景

我在IBM i上通过SQL执行GET请求,目标URL为IBM官方文档示例地址:https://www.ibm.com/support/pages/sites/default/files/inline-files/xmldoc.xml,使用的DB2函数代码如下:

VALUES QSYS2.HTTP_GET(
  'https://www.ibm.com/support/pages/sites/default/files/inline-files/xmldoc.xml',
  '{"headers":{"User-Agent":"IBM i HTTP function","Content-Type":"application/json","Accept":"*/*","Accept-Encoding":"gzip, deflate, br"}}'
);

但由于需要同时配置请求头和代理,当前调用无法正常工作,且不清楚如何在QSYS2.HTTP_GET中设置代理选项。查阅资料仅找到基础请求头的使用案例,未发现包含代理配置的示例。

此前我已在RPGLE程序中通过cURL实现了带代理的请求(代码如下),但希望改用QSYS2.HTTP_GET而非第三方cURL库,同时Postman的代理配置尝试也未成功,急需一个包含请求头及代理配置的QSYS2.HTTP_GET可用示例。

原RPGLE的cURL实现代码:

'QSHONI/QSHCURL ' +
  'CMDLINE(''' +
  '--insecure ' +
  '--proxy-ntlm ' +
  '--proxy "http://myproxy.net:8080" ' +
  '--header "Accept: application/json" ' +
  '--header "Content-Type: application/json" ' +
  '--data ''''{' +
      '"username": "' + connectUser + '",' +
      '"password": "' + connectPassword + '"' +
  '}'''' ' +
  ' "https://theUrlIAmSendingTheGETRequestTo" ' +
  '-o ' + filenameJson + ''') ' +
  'IFSSTDOUT(*YES) ' +
  'IFSFILE(''/CURL/something.txt'') ' +
  'IFSOPT(*ADD)';

解决方案与示例代码

QSYS2.HTTP_GET的第二个参数为JSON格式的请求配置选项,可直接在其中添加代理相关字段,无需额外操作。以下是包含请求头和NTLM认证代理的完整可用示例:

VALUES QSYS2.HTTP_GET(
  'https://www.ibm.com/support/pages/sites/default/files/inline-files/xmldoc.xml',
  '{"headers":{"User-Agent":"IBM i HTTP function","Content-Type":"application/json","Accept":"*/*","Accept-Encoding":"gzip, deflate, br"},
    "proxy": "http://myproxy.net:8080",
    "proxy_auth": "NTLM",
    "proxy_user": "你的代理用户名",
    "proxy_password": "你的代理密码"
  }'
);

参数说明

  • proxy:指定代理服务器的地址与端口,格式为http://代理地址:端口
  • proxy_auth:代理认证类型,此处对应原cURL的--proxy-ntlm,设置为"NTLM";若为基本认证则设为"BASIC"
  • proxy_user/proxy_password:代理服务器的用户名与密码
  • headers字段保留原有请求头配置,无需修改

注意事项

  • 确保IBM i版本为7.3及以上(该版本开始支持QSYS2.HTTP_GET的代理参数)
  • 若代理无需认证,可移除proxy_auth、proxy_user和proxy_password字段
  • 保证JSON格式正确,注意引号、逗号的使用,避免语法错误

内容的提问来源于stack exchange,提问作者Jean-Adrien Oikonomou

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 08:55:14