国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

NIFI使用InvokeHTTP發(fā)送http請(qǐng)求

這篇具有很好參考價(jià)值的文章主要介紹了NIFI使用InvokeHTTP發(fā)送http請(qǐng)求。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

說(shuō)明

這里介紹四種平時(shí)常用的http請(qǐng)求方法:GET、POST、PUT、DELETE。

在官方的介紹文檔中關(guān)于InvokeHTTP處理器的描述是這么說(shuō)的:

An HTTP client processor which can interact with a configurable HTTP Endpoint. The destination URL and HTTP Method are configurable. FlowFile attributes are converted to HTTP headers and the FlowFile contents are included as the body of the request (if the HTTP Method is PUT, POST or PATCH).

大致意思是說(shuō):這是一個(gè)可以與 HTTP 端點(diǎn)交互的 HTTP 客戶端處理器。處理器中的 URL 和 HTTP Method是可以配置的。處理器中的屬性會(huì)轉(zhuǎn)換為 HTTP的請(qǐng)求頭,如果請(qǐng)求方法是 PUT、POST 或 PATCH那么處理器的內(nèi)容將作為請(qǐng)求的正文(請(qǐng)求體)包含在內(nèi)。

測(cè)試接口

這里給了幾個(gè)處理器測(cè)試用到的接口,主別對(duì)應(yīng)GET、POST、PUT、DELETE請(qǐng)求,測(cè)試的代碼不涉及業(yè)務(wù)邏輯,只是簡(jiǎn)單用來(lái)配合測(cè)試處理器使用。

package com.example.common.resp;

import com.example.common.enums.RespEnum;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;


@AllArgsConstructor
@NoArgsConstructor
@Data
public class Result {
    private Integer code;
    private String message;
    private Object data;


    // 省略部分代碼。。。

    public static Result ok(Object data) {
        return ok(RespEnum.SUCCESS.getCode(), RespEnum.SUCCESS.getMessage(), data);
    }

}



=====================================================================================
測(cè)試接口
=====================================================================================



package com.example.redis.controller;

import com.alibaba.fastjson2.JSONObject;
import com.example.common.resp.Result;
import org.springframework.web.bind.annotation.*;

import java.util.Map;


@RestController
@RequestMapping("/test")
public class TestController {

    @GetMapping("/{id}")
    public Result getById(@PathVariable String id, @RequestParam Map<String, Object> query) {
        JSONObject res = new JSONObject();
        res.put("method", "GET");
        res.put("desc", "這個(gè)是get方法");
        res.put("id", id);
        res.put("query", query);
        return Result.ok(res);
    }

    @PostMapping("")
    public Result add(@RequestBody JSONObject body) {
        JSONObject res = new JSONObject();
        res.put("method", "POST");
        res.put("desc", "這個(gè)是post方法");
        res.put("body", body);
        return Result.ok(res);
    }

    @PutMapping("/{id}")
    public Result editById(@PathVariable String id, @RequestBody JSONObject body) {
        JSONObject res = new JSONObject();
        res.put("method", "PUT");
        res.put("desc", "這個(gè)是put方法");
        res.put("id", id);
        res.put("body", body);
        return Result.ok(res);
    }

    @DeleteMapping("/{id}")
    public Result deleteById(@PathVariable String id) {
        JSONObject res = new JSONObject();
        res.put("method", "DELETE");
        res.put("desc", "這個(gè)是delete方法");
        res.put("id", id);
        return Result.ok(res);
    }
}

發(fā)送GET請(qǐng)求

添加處理器:InvokeHTTP

點(diǎn)擊工具欄左上角的Processor拖拽到畫布中,篩選出InvokeHTTP處理器添加到畫布中

NIFI使用InvokeHTTP發(fā)送http請(qǐng)求,NIFI,nifi,http

NIFI使用InvokeHTTP發(fā)送http請(qǐng)求,NIFI,nifi,http

配置處理器

雙擊添加的處理器,切換到SETTINGS,給處理器起個(gè)名字

NIFI使用InvokeHTTP發(fā)送http請(qǐng)求,NIFI,nifi,http

起好名字后切換到PROPERTIES,配置以下內(nèi)容,最后點(diǎn)擊APPLY

NIFI使用InvokeHTTP發(fā)送http請(qǐng)求,NIFI,nifi,http

添加自定義請(qǐng)求頭

如果需要給請(qǐng)求頭添加自定義屬性的話,直接點(diǎn)擊右上角的加號(hào)+添加即可,例如我這里添加一個(gè)myToken的請(qǐng)求頭,這個(gè)時(shí)候發(fā)送的請(qǐng)求頭里面便會(huì)攜帶該參數(shù)

NIFI使用InvokeHTTP發(fā)送http請(qǐng)求,NIFI,nifi,http

測(cè)試處理器

方便測(cè)試,將InvokeHTTP處理器設(shè)置為10秒執(zhí)行一次

NIFI使用InvokeHTTP發(fā)送http請(qǐng)求,NIFI,nifi,http

同理添加LogAttribute處理器到畫布中

NIFI使用InvokeHTTP發(fā)送http請(qǐng)求,NIFI,nifi,http

NIFI使用InvokeHTTP發(fā)送http請(qǐng)求,NIFI,nifi,http

修改LogAttribute處理器的配置,將PROPERTIES選項(xiàng)卡中Log Payload的屬性值改為true

NIFI使用InvokeHTTP發(fā)送http請(qǐng)求,NIFI,nifi,http

連接兩個(gè)處理器,關(guān)聯(lián)關(guān)系選擇Response,最后點(diǎn)擊ADD

NIFI使用InvokeHTTP發(fā)送http請(qǐng)求,NIFI,nifi,http

將第一個(gè)InvokeHTTP處理器自身的RELATIONSHIPS除了Response之外全部選擇terminate

NIFI使用InvokeHTTP發(fā)送http請(qǐng)求,NIFI,nifi,http

將第二個(gè)LogAttribute處理器自身的的RELATIONSHIPS選擇terminate

NIFI使用InvokeHTTP發(fā)送http請(qǐng)求,NIFI,nifi,http

處理器全部顯示如圖所示則表示沒(méi)問(wèn)題,可以運(yùn)行了

NIFI使用InvokeHTTP發(fā)送http請(qǐng)求,NIFI,nifi,http

啟動(dòng)兩個(gè)處理器,在畫布空白位置鼠標(biāo)右鍵,選擇Start

NIFI使用InvokeHTTP發(fā)送http請(qǐng)求,NIFI,nifi,http

在nifi的日志中可以看到每隔十秒鐘便會(huì)打印一次接口返回的結(jié)果

NIFI使用InvokeHTTP發(fā)送http請(qǐng)求,NIFI,nifi,http

發(fā)送POST請(qǐng)求

發(fā)送POST請(qǐng)求攜帶請(qǐng)求體數(shù)據(jù)我們需要借助另外一個(gè)處理器:GenerateFlowFile

添加處理器:GenerateFlowFile

NIFI使用InvokeHTTP發(fā)送http請(qǐng)求,NIFI,nifi,http

配置處理器

雙擊添加的處理器,在SETTINGS選項(xiàng)卡中給處理器起個(gè)名稱

NIFI使用InvokeHTTP發(fā)送http請(qǐng)求,NIFI,nifi,http

切換到PROPERTIES選項(xiàng)卡,然后分別配置Custom Text和Mime Type兩個(gè)屬性的值,其他屬性的值默認(rèn)即可。

Custom Text:(官方解釋)If Data Format is text and if Unique FlowFiles is false, then this custom text will be used as content of the generated FlowFiles and the File Size will be ignored。通俗的說(shuō)就是如果Custom Text中的值是文本類型的并且Unique FlowFiles屬性的值是false,則Custom Text中的值會(huì)當(dāng)做流文件的內(nèi)容,這樣Custom Text中的值傳到下一個(gè)處理器InvokeHTTP的時(shí)候便會(huì)作為請(qǐng)求體數(shù)據(jù)傳到接口中。

NIFI使用InvokeHTTP發(fā)送http請(qǐng)求,NIFI,nifi,http

NIFI使用InvokeHTTP發(fā)送http請(qǐng)求,NIFI,nifi,http

添加處理器:InvokeHTTP

和發(fā)送GET請(qǐng)求一樣,添加InvokeHTTP處理器,然后配置以下內(nèi)容,post請(qǐng)求中的請(qǐng)求體來(lái)自于上一個(gè)處理器的內(nèi)容

NIFI使用InvokeHTTP發(fā)送http請(qǐng)求,NIFI,nifi,http

測(cè)試處理器

將第一個(gè)處理器GenerateFlowFile和第二個(gè)處理器InvokeHTTP連接,關(guān)聯(lián)關(guān)系選擇success

NIFI使用InvokeHTTP發(fā)送http請(qǐng)求,NIFI,nifi,http

繼續(xù)將第二個(gè)處理器InvokeHTTP和之前添加過(guò)的LogAttribute處理器進(jìn)行連接,關(guān)聯(lián)關(guān)系選擇Response

NIFI使用InvokeHTTP發(fā)送http請(qǐng)求,NIFI,nifi,http

同樣的將InvokeHTTP處理器自身的RELATIONSHIPS除了Response之外全部選擇terminate

NIFI使用InvokeHTTP發(fā)送http請(qǐng)求,NIFI,nifi,http

同樣的方便測(cè)試,將第一個(gè)處理器GenerateFlowFile設(shè)置為10秒執(zhí)行一次,然后將POST方法對(duì)應(yīng)的三個(gè)處理器分別啟動(dòng)(鼠標(biāo)放到對(duì)應(yīng)的處理器上然后右鍵選擇Start啟動(dòng))

NIFI使用InvokeHTTP發(fā)送http請(qǐng)求,NIFI,nifi,http

NIFI使用InvokeHTTP發(fā)送http請(qǐng)求,NIFI,nifi,http

查看nifi的日志,可以看到每隔十秒鐘便會(huì)打印一次接口返回的結(jié)果

NIFI使用InvokeHTTP發(fā)送http請(qǐng)求,NIFI,nifi,http

發(fā)送PUT請(qǐng)求

put請(qǐng)求和post請(qǐng)求是類似,處理器按照post請(qǐng)求的重新添加一遍即可,只需要將InvokeHTTP處理器里面的請(qǐng)求方法改為PUT,URL改為對(duì)應(yīng)的請(qǐng)求路徑即可。這里不再重復(fù)添加,下面是添加好之后的

NIFI使用InvokeHTTP發(fā)送http請(qǐng)求,NIFI,nifi,http

測(cè)試結(jié)果

NIFI使用InvokeHTTP發(fā)送http請(qǐng)求,NIFI,nifi,http

發(fā)送DELETE請(qǐng)求

put請(qǐng)求和get請(qǐng)求是類似,處理器按照get請(qǐng)求的重新添加一遍即可,只需要將InvokeHTTP處理器里面的請(qǐng)求方法改為DELETE,URL改為對(duì)應(yīng)的請(qǐng)求路徑即可。這里不再重復(fù)添加,下面是添加好之后的

NIFI使用InvokeHTTP發(fā)送http請(qǐng)求,NIFI,nifi,http

測(cè)試結(jié)果

NIFI使用InvokeHTTP發(fā)送http請(qǐng)求,NIFI,nifi,http

?結(jié)束語(yǔ)

以上便是NIFI中關(guān)于InvokeHTTP的使用,如果有問(wèn)題歡迎大家評(píng)論。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-701221.html

到了這里,關(guān)于NIFI使用InvokeHTTP發(fā)送http請(qǐng)求的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • NIFI分頁(yè)獲取Postgresql數(shù)據(jù)到Hbase中_實(shí)際操作---大數(shù)據(jù)之Nifi工作筆記0049

    NIFI分頁(yè)獲取Postgresql數(shù)據(jù)到Hbase中_實(shí)際操作---大數(shù)據(jù)之Nifi工作筆記0049

    首先看一下整體流程,可以看到這里用的PutHbaseJson處理器,把數(shù)據(jù)導(dǎo)入到 hbase中的 注意這里也可以使用PutSql導(dǎo)入數(shù)據(jù),通過(guò)phoenix的jdbc驅(qū)動(dòng),然后把數(shù)據(jù)利用PutSql處理器導(dǎo)入到 Hbase中,但是我這里的時(shí)候報(bào)錯(cuò)了,然后一直沒(méi)解決,所以最后用了PutHbaseJson處理器,把數(shù)據(jù)存入到Hbase中去. ?

    2024年02月06日
    瀏覽(35)
  • docker安裝Apache NIFI

    docker安裝Apache NIFI

    系統(tǒng):CentOS7.9 nifi版本:1.23.2 nifi的鏡像比較大,大概有2G左右,下載時(shí)間根據(jù)個(gè)人網(wǎng)速而定 查看下載好的鏡像 創(chuàng)建掛載目錄的目的是為了將鏡像內(nèi)部的數(shù)據(jù)掛載到宿主機(jī),防止容器不小心刪掉導(dǎo)致數(shù)據(jù)丟失 目的是為了將容器中的數(shù)據(jù)復(fù)制到宿主機(jī)對(duì)應(yīng)的掛載目錄中 命令中

    2024年02月09日
    瀏覽(21)
  • nifi 映射ip部署報(bào)錯(cuò)

    nifi1.24.0 在arm架構(gòu),雙ip部署報(bào)錯(cuò)問(wèn)題解決 System Error The request contained an invalid host header [192.168.1.11:8888] in the request [/nifi/]. Check for request manipulation or third-party intercept. Valid host headers are [empty] or: 127.0.0.1 127.0.0.1:8888 localhost localhost:8888 [::1] [::1]:8888 fdz57 fdz57:8888 192.168.1.12 192.168.1.12

    2024年02月04日
    瀏覽(14)
  • 【大數(shù)據(jù)】Apache NiFi 數(shù)據(jù)同步流程實(shí)踐

    【大數(shù)據(jù)】Apache NiFi 數(shù)據(jù)同步流程實(shí)踐

    初衷 :對(duì)于一些新接觸 Apache NIFI 的小伙伴來(lái)說(shuō),他們急于想體驗(yàn) NIFI,恨不得直接找到一篇文章,照著做就直接能夠解決目前遇到的需求或者問(wèn)題,回想當(dāng)初的我,也是這個(gè)心態(tài)。其實(shí)這樣的心態(tài)是不對(duì)的。好多加入 NIFI 學(xué)習(xí)群的新手同學(xué)都會(huì)有這個(gè)問(wèn)題,一些基本的概念和

    2024年02月06日
    瀏覽(21)
  • 【大數(shù)據(jù)】Apache NiFi 助力數(shù)據(jù)處理及分發(fā)

    【大數(shù)據(jù)】Apache NiFi 助力數(shù)據(jù)處理及分發(fā)

    簡(jiǎn)單的說(shuō),NiFi 就是為了解決不同系統(tǒng)間數(shù)據(jù)自動(dòng)流通問(wèn)題而建立的。雖然 dataflow 這個(gè)術(shù)語(yǔ)在各種場(chǎng)景都有被使用,但我們?cè)谶@里使用它來(lái)表示不同系統(tǒng)間的自動(dòng)化的可管理的信息流。自企業(yè)擁有多個(gè)系統(tǒng)開始,一些系統(tǒng)會(huì)有數(shù)據(jù)生成,一些系統(tǒng)要消費(fèi)數(shù)據(jù),而不同系統(tǒng)之間

    2024年02月07日
    瀏覽(18)
  • 大數(shù)據(jù)NiFi(二十):實(shí)時(shí)同步MySQL數(shù)據(jù)到Hive

    大數(shù)據(jù)NiFi(二十):實(shí)時(shí)同步MySQL數(shù)據(jù)到Hive

    文章目錄 實(shí)時(shí)同步MySQL數(shù)據(jù)到Hive 一、開啟MySQL的binlog日志 1、登錄mysql查看MySQL是否開啟binlog日志

    2024年02月03日
    瀏覽(15)
  • 【中危】 Apache NiFi 連接 URL 驗(yàn)證繞過(guò)漏洞 (CVE-2023-40037)

    【中?!?Apache NiFi 連接 URL 驗(yàn)證繞過(guò)漏洞 (CVE-2023-40037)

    Apache NiFi 是一個(gè)開源的數(shù)據(jù)流處理和自動(dòng)化工具。 在受影響版本中,由于多個(gè)Processors和Controller Services在配置JDBC和JNDI JMS連接時(shí)對(duì)URL參數(shù)過(guò)濾不完全。使用startsWith方法過(guò)濾用戶輸入U(xiǎn)RL,導(dǎo)致過(guò)濾可以被繞過(guò)。攻擊者可以通過(guò)構(gòu)造特定格式來(lái)繞過(guò)連接URL驗(yàn)證,可能造成數(shù)據(jù)泄露

    2024年02月12日
    瀏覽(33)
  • Apache NiFi and Apache Flink: A Deep Dive into RealTime Stream Processing

    隨著數(shù)據(jù)量的增長(zhǎng),實(shí)時(shí)數(shù)據(jù)處理變得越來(lái)越重要。實(shí)時(shí)流處理是一種處理大規(guī)模實(shí)時(shí)數(shù)據(jù)流的技術(shù),它可以在數(shù)據(jù)到達(dá)時(shí)進(jìn)行處理,而不是等待所有數(shù)據(jù)收集后進(jìn)行批量處理。這種技術(shù)在各種應(yīng)用場(chǎng)景中都有廣泛的應(yīng)用,例如實(shí)時(shí)監(jiān)控、金融交易、物聯(lián)網(wǎng)等。 Apache NiFi和

    2024年02月22日
    瀏覽(18)
  • 使用Go發(fā)送HTTP GET請(qǐng)求

    使用Go發(fā)送HTTP GET請(qǐng)求

    在Go語(yǔ)言中,我們可以使用 net/http 包來(lái)發(fā)送HTTP GET請(qǐng)求。以下是一個(gè)簡(jiǎn)單的示例,展示了如何使用Go發(fā)送HTTP GET請(qǐng)求并獲取響應(yīng)。 go 復(fù)制代碼 package ?main import ?( \\\"fmt\\\" ? \\\"io/ioutil\\\" ? \\\"net/http\\\" ? ) func ? main () ?{ // 創(chuàng)建一個(gè)HTTP客戶端 client := http.Client{} // 創(chuàng)建一個(gè)GET請(qǐng)求 req, err :=

    2024年01月23日
    瀏覽(19)
  • 使用Go發(fā)送HTTP POST請(qǐng)求

    使用Go發(fā)送HTTP POST請(qǐng)求

    在Go語(yǔ)言中,我們可以使用 net/http 包來(lái)發(fā)送HTTP POST請(qǐng)求。以下是一個(gè)簡(jiǎn)單的示例,展示了如何使用Go發(fā)送HTTP POST請(qǐng)求并獲取響應(yīng)。 go 復(fù)制代碼 package ?main import ?( \\\"bytes\\\" ? \\\"fmt\\\" ? \\\"io/ioutil\\\" ? \\\"net/http\\\" ? ) func ? main () ?{ // 創(chuàng)建一個(gè)HTTP客戶端 client := http.Client{} // 創(chuàng)建一個(gè)POST請(qǐng)求

    2024年01月23日
    瀏覽(27)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包