httppull.json 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379
  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. "optional": true,
  193. "control": "list",
  194. "type": "object",
  195. "hint": {
  196. "en_US": "The HTTP request headers that you want to send along with the HTTP request.",
  197. "zh_CN": "需要与 HTTP 请求一起发送的 HTTP 请求标头。"
  198. },
  199. "label": {
  200. "en_US": "HTTP headers",
  201. "zh_CN": "HTTP标头"
  202. }
  203. },
  204. {
  205. "name": "responseType",
  206. "default": "code",
  207. "optional": true,
  208. "control": "select",
  209. "type": "string",
  210. "values": [
  211. "code",
  212. "body"
  213. ],
  214. "hint": {
  215. "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.",
  216. "zh_CN": "响应类型,可以是 `code` 或者 `body`,如果是 `code`,那么 eKuiper 会检查 HTTP 响应码来判断响应状态。如果是 `body`,那么 eKuiper 会检查 HTTP 响应正文,要求其为 JSON 格式,并且检查 code 字段的值。"
  217. },
  218. "label": {
  219. "en_US": "Response type",
  220. "zh_CN": "响应类型"
  221. }
  222. },
  223. {
  224. "name": "oauth",
  225. "optional": true,
  226. "control": "list",
  227. "type": "object",
  228. "hint": {
  229. "en_US": "Configure the oauth authentication flow.",
  230. "zh_CN": "配置 OAuth 验证流程。"
  231. },
  232. "label": {
  233. "en_US": "OAuth",
  234. "zh_CN": "OAuth"
  235. },
  236. "default":{
  237. "access": {
  238. "name": "access",
  239. "optional": true,
  240. "control": "list",
  241. "type": "object",
  242. "hint": {
  243. "en_US": "Configure how to fetch the access token.",
  244. "zh_CN": "配置如何获取访问令牌。"
  245. },
  246. "label": {
  247. "en_US": "Access token request",
  248. "zh_CN": "访问令牌请求"
  249. },
  250. "default": {
  251. "url": {
  252. "name": "url",
  253. "default": "",
  254. "optional": true,
  255. "control": "text",
  256. "type": "string",
  257. "hint": {
  258. "en_US": "The URL where to get the access token.",
  259. "zh_CN": "获取访问令牌的 URL"
  260. },
  261. "label": {
  262. "en_US": "Access Token URL",
  263. "zh_CN": "访问令牌 URL"
  264. }
  265. },
  266. "body": {
  267. "name": "body",
  268. "default": "",
  269. "optional": true,
  270. "control": "textarea",
  271. "type": "string",
  272. "hint": {
  273. "en_US": "The body of access token request",
  274. "zh_CN": "访问令牌请求的正文"
  275. },
  276. "label": {
  277. "en_US": "Access Token Request Body",
  278. "zh_CN": "访问令牌请求的正文"
  279. }
  280. },
  281. "expire": {
  282. "name": "expire",
  283. "default": "",
  284. "optional": true,
  285. "control": "text",
  286. "type": "string",
  287. "hint": {
  288. "en_US": "The expire time or expire time template",
  289. "zh_CN": "过期时间"
  290. },
  291. "label": {
  292. "en_US": "Expire Time",
  293. "zh_CN": "过期时间"
  294. }
  295. }
  296. }
  297. },
  298. "refresh":{
  299. "name": "refresh",
  300. "optional": true,
  301. "control": "list",
  302. "type": "object",
  303. "hint": {
  304. "en_US": "Configure how to refresh token after expiration.",
  305. "zh_CN": "配置令牌过期后如何更新令牌。"
  306. },
  307. "label": {
  308. "en_US": "Refresh token request",
  309. "zh_CN": "更新令牌请求"
  310. },
  311. "default": {
  312. "url":{
  313. "name": "url",
  314. "default": "",
  315. "optional": true,
  316. "control": "text",
  317. "type": "string",
  318. "hint": {
  319. "en_US": "The URL where to get the refresh token.",
  320. "zh_CN": "获取更新令牌的 URL"
  321. },
  322. "label": {
  323. "en_US": "Refresh Token URL",
  324. "zh_CN": "更新令牌 URL"
  325. }
  326. },
  327. "headers":{
  328. "name": "headers",
  329. "optional": true,
  330. "control": "list",
  331. "type": "object",
  332. "hint": {
  333. "en_US": "The HTTP request headers that you want to send along with the HTTP refresh request.",
  334. "zh_CN": "需要与刷新 Token HTTP 请求一起发送的 HTTP 请求标头。"
  335. },
  336. "label": {
  337. "en_US": "Refresh token request headers",
  338. "zh_CN": "刷新令牌请求标头"
  339. }
  340. },
  341. "body":{
  342. "name": "body",
  343. "default": "",
  344. "optional": true,
  345. "control": "textarea",
  346. "type": "string",
  347. "hint": {
  348. "en_US": "The body of refresh token request",
  349. "zh_CN": "刷新令牌请求的正文"
  350. },
  351. "label": {
  352. "en_US": "Refresh token request body",
  353. "zh_CN": "刷新令牌请求的正文"
  354. }
  355. }
  356. }
  357. }
  358. }
  359. }
  360. ]
  361. },
  362. "outputs": [
  363. {
  364. "label": {
  365. "en_US": "Output",
  366. "zh_CN": "输出"
  367. },
  368. "value": "signal"
  369. }
  370. ],
  371. "node": {
  372. "category": "source",
  373. "icon": "iconPath",
  374. "label": {
  375. "en_US": "HTTP PULL",
  376. "zh_CN": "HTTP PULL"
  377. }
  378. }
  379. }