httppull.json 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394
  1. {
  2. "libs": [],
  3. "about": {
  4. "trial": false,
  5. "author": {
  6. "name": "EMQ",
  7. "email": "contact@emqx.io",
  8. "company": "EMQ Technologies Co., Ltd",
  9. "website": "https://www.emqx.io"
  10. },
  11. "helpUrl": {
  12. "en_US": "https://ekuiper.org/docs/en/latest/guide/sources/builtin/http_pull.html",
  13. "zh_CN": "https://ekuiper.org/docs/zh/latest/guide/sources/builtin/http_pull.html"
  14. },
  15. "description": {
  16. "en_US": "eKuiper provides built-in support for pulling HTTP source stream, which can pull the message from HTTP server broker and feed into the eKuiper processing pipeline.",
  17. "zh_CN": "eKuiper 为提取 HTTP 源流提供了内置支持,该支持可从 HTTP 服务器代理提取消息并输入 eKuiper 处理管道。"
  18. }
  19. },
  20. "dataSource": {
  21. "hint": {
  22. "en_US": "The URL endpoint to concatenate with the URL property to form the complete URL, e.g. /api/data",
  23. "zh_CN": "URL 的路径部分,与 URL 属性拼接成最终 URL, 例如 /api/data"
  24. },
  25. "label": {
  26. "en_US": "Data Source (URL Endpoint)",
  27. "zh_CN": "数据源(URL拼接路径)"
  28. }
  29. },
  30. "properties": {
  31. "default": [{
  32. "name": "url",
  33. "default": "http://127.0.0.1:5536",
  34. "optional": false,
  35. "control": "text",
  36. "type": "string",
  37. "hint": {
  38. "en_US": "The URL where to get the result.",
  39. "zh_CN": "获取结果的 URL"
  40. },
  41. "label": {
  42. "en_US": "URL",
  43. "zh_CN": "路径"
  44. }
  45. }, {
  46. "name": "method",
  47. "default": "get",
  48. "optional": false,
  49. "control": "select",
  50. "type": "string",
  51. "values": ["post", "get", "put", "delete"],
  52. "hint": {
  53. "en_US": "HTTP method, it could be post, get, put & delete.",
  54. "zh_CN": "HTTP 方法,它可以是 post、get、put 和 delete。"
  55. },
  56. "label": {
  57. "en_US": "HTTP method",
  58. "zh_CN": "HTTP 方法"
  59. }
  60. }, {
  61. "name": "interval",
  62. "default": 1000,
  63. "optional": true,
  64. "control": "text",
  65. "type": "int",
  66. "hint": {
  67. "en_US": "The interval between the requests, time unit is ms.",
  68. "zh_CN": "请求之间的间隔时间,单位为 ms"
  69. },
  70. "label": {
  71. "en_US": "Interval",
  72. "zh_CN": "间隔时间"
  73. }
  74. }, {
  75. "name": "timeout",
  76. "default": 5000,
  77. "optional": true,
  78. "control": "text",
  79. "type": "int",
  80. "hint": {
  81. "en_US": "The timeout for http request, time unit is ms.",
  82. "zh_CN": "http 请求的超时时间,单位为 ms"
  83. },
  84. "label": {
  85. "en_US": "Timeout",
  86. "zh_CN": "超时时间"
  87. }
  88. }, {
  89. "name": "incremental",
  90. "default": false,
  91. "optional": true,
  92. "control": "radio",
  93. "type": "bool",
  94. "hint": {
  95. "en_US": "If it's set to true, then will compare with last result; If response of two requests are the same, then will skip sending out the result.",
  96. "zh_CN": "如果将其设置为 true,则将与最后的结果进行比较; 如果两个请求的响应相同,则将跳过发送结果。"
  97. },
  98. "label": {
  99. "en_US": "Incremental",
  100. "zh_CN": "递增"
  101. }
  102. }, {
  103. "name": "body",
  104. "default": "",
  105. "optional": true,
  106. "control": "textarea",
  107. "type": "string",
  108. "hint": {
  109. "en_US": "The body of request",
  110. "zh_CN": "请求的正文"
  111. },
  112. "label": {
  113. "en_US": "Body",
  114. "zh_CN": "正文"
  115. }
  116. }, {
  117. "name": "bodyType",
  118. "default": "json",
  119. "optional": true,
  120. "control": "text",
  121. "type": "string",
  122. "hint": {
  123. "en_US": "Body type, it could be none|text|json|html|xml|javascript|format.",
  124. "zh_CN": "正文类型,可以是 none|text|json|html|xml|javascript| 格式"
  125. },
  126. "label": {
  127. "en_US": "Body type",
  128. "zh_CN": "正文类型"
  129. }
  130. }, {
  131. "name": "certificationPath",
  132. "default": "",
  133. "optional": true,
  134. "connection_related": true,
  135. "control": "text",
  136. "type": "string",
  137. "hint": {
  138. "en_US": "The location of certification path. It can be an absolute path, or a relative path.",
  139. "zh_CN": "证书路径。可以为绝对路径,也可以为相对路径。如果指定的是相对路径,那么父目录为执行 server 命令的路径。"
  140. },
  141. "label": {
  142. "en_US": "Certification path",
  143. "zh_CN": "证书路径"
  144. }
  145. }, {
  146. "name": "privateKeyPath",
  147. "default": "",
  148. "optional": true,
  149. "connection_related": true,
  150. "control": "text",
  151. "type": "string",
  152. "hint": {
  153. "en_US": "The location of private key path. It can be an absolute path, or a relative path. ",
  154. "zh_CN": "私钥路径。可以为绝对路径,也可以为相对路径。"
  155. },
  156. "label": {
  157. "en_US": "Private key path",
  158. "zh_CN": "私钥路径"
  159. }
  160. }, {
  161. "name": "rootCaPath",
  162. "default": "",
  163. "optional": true,
  164. "connection_related": true,
  165. "control": "text",
  166. "type": "string",
  167. "hint": {
  168. "en_US": "The location of root ca path. It can be an absolute path, or a relative path. ",
  169. "zh_CN": "根证书路径,用以验证服务器证书。可以为绝对路径,也可以为相对路径。"
  170. },
  171. "label": {
  172. "en_US": "Root CA path",
  173. "zh_CN": "根证书路径"
  174. }
  175. }, {
  176. "name": "insecureSkipVerify",
  177. "default": true,
  178. "optional": true,
  179. "control": "radio",
  180. "type": "bool",
  181. "hint": {
  182. "en_US": "Control if to skip the certification verification. If it is set to true, then skip certification verification; Otherwise, verify the certification.",
  183. "zh_CN": "控制是否跳过证书认证。如果被设置为 true,那么跳过证书认证;否则进行证书验证。"
  184. },
  185. "label": {
  186. "en_US": "Skip Certification verification",
  187. "zh_CN": "跳过证书验证"
  188. }
  189. }, {
  190. "name": "headers",
  191. "default": [{
  192. "name": "Accept",
  193. "default": "application/json",
  194. "optional": true,
  195. "control": "text",
  196. "type": "string",
  197. "hint": {
  198. "en_US": "HTTP headers",
  199. "zh_CN": "HTTP标头"
  200. },
  201. "label": {
  202. "en_US": "HTTP headers",
  203. "zh_CN": "HTTP标头"
  204. }
  205. }],
  206. "optional": true,
  207. "control": "list",
  208. "type": "list_object",
  209. "hint": {
  210. "en_US": "The HTTP request headers that you want to send along with the HTTP request.",
  211. "zh_CN": "需要与 HTTP 请求一起发送的 HTTP 请求标头。"
  212. },
  213. "label": {
  214. "en_US": "HTTP headers",
  215. "zh_CN": "HTTP标头"
  216. }
  217. },
  218. {
  219. "name": "responseType",
  220. "default": "code",
  221. "optional": true,
  222. "control": "select",
  223. "type": "string",
  224. "values": [
  225. "code",
  226. "body"
  227. ],
  228. "hint": {
  229. "en_US": "Response type, could be `code` or `body`. If it is `code`, then eKuiper will check the HTTP response code for response status. If it is `body`, then eKuiper will check the HTTP response body with JSON format and examine the value of the code field.",
  230. "zh_CN": "响应类型,可以是 `code` 或者 `body`,如果是 `code`,那么 eKuiper 会检查 HTTP 响应码来判断响应状态。如果是 `body`,那么 eKuiper 会检查 HTTP 响应正文,要求其为 JSON 格式,并且检查 code 字段的值。"
  231. },
  232. "label": {
  233. "en_US": "Response type",
  234. "zh_CN": "响应类型"
  235. }
  236. },
  237. {
  238. "name": "oauth",
  239. "optional": true,
  240. "control": "list",
  241. "type": "list_object",
  242. "hint": {
  243. "en_US": "Configure the oAuth authentication flow.",
  244. "zh_CN": "配置 OAuth 验证流程。"
  245. },
  246. "label": {
  247. "en_US": "OAuth",
  248. "zh_CN": "OAuth"
  249. },
  250. "default":[
  251. {
  252. "name": "access",
  253. "optional": true,
  254. "control": "list",
  255. "type": "list_object",
  256. "hint": {
  257. "en_US": "Configure how to fetch the access token.",
  258. "zh_CN": "配置如何获取访问令牌。"
  259. },
  260. "label": {
  261. "en_US": "Access token request",
  262. "zh_CN": "访问令牌请求"
  263. },
  264. "default": [
  265. {
  266. "name": "url",
  267. "default": "http://127.0.0.1:5536/token",
  268. "optional": false,
  269. "control": "text",
  270. "type": "string",
  271. "hint": {
  272. "en_US": "The URL where to get the access token.",
  273. "zh_CN": "获取访问令牌的 URL"
  274. },
  275. "label": {
  276. "en_US": "Access Token URL",
  277. "zh_CN": "访问令牌 URL"
  278. }
  279. },
  280. {
  281. "name": "body",
  282. "default": "",
  283. "optional": true,
  284. "control": "textarea",
  285. "type": "string",
  286. "hint": {
  287. "en_US": "The body of access token request",
  288. "zh_CN": "访问令牌请求的正文"
  289. },
  290. "label": {
  291. "en_US": "Access Token Request Body",
  292. "zh_CN": "访问令牌请求的正文"
  293. }
  294. },
  295. {
  296. "name": "expire",
  297. "default": "3600",
  298. "optional": true,
  299. "control": "text",
  300. "type": "string",
  301. "hint": {
  302. "en_US": "The expire time or expire time template",
  303. "zh_CN": "过期时间"
  304. },
  305. "label": {
  306. "en_US": "Expire Time",
  307. "zh_CN": "过期时间"
  308. }
  309. }
  310. ]
  311. },
  312. {
  313. "name": "refresh",
  314. "optional": true,
  315. "control": "list",
  316. "type": "list_object",
  317. "hint": {
  318. "en_US": "Configure how to refresh token after expiration.",
  319. "zh_CN": "配置令牌过期后如何更新令牌。"
  320. },
  321. "label": {
  322. "en_US": "Refresh token request",
  323. "zh_CN": "更新令牌请求"
  324. },
  325. "default": [
  326. {
  327. "name": "url",
  328. "default": "http://127.0.0.1:5536/refresh",
  329. "optional": false,
  330. "control": "text",
  331. "type": "string",
  332. "hint": {
  333. "en_US": "The URL where to get the refresh token.",
  334. "zh_CN": "获取更新令牌的 URL"
  335. },
  336. "label": {
  337. "en_US": "Refresh Token URL",
  338. "zh_CN": "更新令牌 URL"
  339. }
  340. },
  341. {
  342. "name": "headers",
  343. "default": [],
  344. "optional": true,
  345. "control": "list",
  346. "type": "list_object",
  347. "hint": {
  348. "en_US": "The HTTP request headers that you want to send along with the HTTP refresh request.",
  349. "zh_CN": "需要与刷新 Token HTTP 请求一起发送的 HTTP 请求标头。"
  350. },
  351. "label": {
  352. "en_US": "Refresh token request headers",
  353. "zh_CN": "刷新令牌请求标头"
  354. }
  355. },
  356. {
  357. "name": "body",
  358. "default": "",
  359. "optional": true,
  360. "control": "textarea",
  361. "type": "string",
  362. "hint": {
  363. "en_US": "The body of refresh token request",
  364. "zh_CN": "刷新令牌请求的正文"
  365. },
  366. "label": {
  367. "en_US": "Refresh token request body",
  368. "zh_CN": "刷新令牌请求的正文"
  369. }
  370. }
  371. ]
  372. }
  373. ]
  374. }
  375. ]
  376. },
  377. "outputs": [
  378. {
  379. "label": {
  380. "en_US": "Output",
  381. "zh_CN": "输出"
  382. },
  383. "value": "signal"
  384. }
  385. ],
  386. "node": {
  387. "category": "source",
  388. "icon": "iconPath",
  389. "label": {
  390. "en_US": "HTTP PULL",
  391. "zh_CN": "HTTP PULL"
  392. }
  393. }
  394. }