首页 > 解决方案 > 如何创建一个 kdb rest api

问题描述

我希望在 kdb+/q 中创建一个 rest api。假设我的数据来自某个函数.ns.func。目前,我有类似的东西:

.ns.zphOrig:.z.ph;
.ns.zphWrapper:{[zph; x]
   if[(x 0) like "*getData*"; :.h.hy[`json] .j.j .ns.func[x]];
   ret zph;
   ret}
.z.ph:.ns.zphWrapper[.ns.zphOrig];

有了这个,如果我转到我的页面,比如说“http://localhost.com:6789?getData&name=rob”,那么我将以正确的 json 格式获取数据。但是,当我尝试以任何其他方式连接时,KDB 似乎根本看不到有任何请求,并且出现 401 错误。

我也尝试了以下方法,仍然收到 401 错误,没有交通迹象。

.z.ws:{[x] neg[.z.w] .j.j .ns.func[x]}

完成后,我将连接到 C# 程序。另外,我不能使用任何外部库,我使用的是 3.6 版。谢谢你的帮助!

标签: apirestcurlkdb

解决方案


我遇到的问题源于许可。一旦我清除它,实际的 api 就可以正常工作了。


推荐阅读