濮阳杆衣贸易有限公司

主頁 > 知識庫 > Nexus使用Api進行操作

Nexus使用Api進行操作

熱門標簽:申請400電話價格多少 外呼系統(tǒng)的經(jīng)營范圍 安陽ai電銷機器人軟件 智能電話機器人坐席 柳州市機器人外呼系統(tǒng)報價 涪陵商都400電話開通辦理 外呼系統(tǒng)不彈窗 廈門營銷外呼系統(tǒng)平臺 云會外呼系統(tǒng)

Nexus提供了RestApi,但是一部分Api仍然需要結(jié)合Groovy等進行操作,在3.3及其以后的版本上進行了強化,但是和普通的RestApi相比仍有一些“使用上的特性”。這篇文章以創(chuàng)建raw的repository為例,來確認一下相關(guān)的使用方法。

前提準備

準備可運行的Nexus,這里的版本為3.2.1

Api機制

這篇文章介紹的是Nexus3推出之初的Api的設(shè)計思路,主要是通過結(jié)合groovy腳本來完成相關(guān)的功能,簡單的來說需要用戶自行提供groovy腳本,nexus提供上傳和運行腳本的接口,雖然有些粗糙,但是大部分功能畢竟留出了一個方式供用戶去使用,強大的groovy腳本中至于需要實現(xiàn)什么樣的功能,那就看用戶自己的需要了。在一定程度上來說,算是一個能夠創(chuàng)造API的API

使用步驟

步驟1: 以json文件為載體,創(chuàng)建可運行的groovy腳本

格式大體如下:

{
 "name": "腳本名稱",
 "type": "groovy",
 "content": "groovy語句"
}

注意事項:

  • 注意雙引號和單引號的使用
  • 腳本的名稱會成為后續(xù)API的一部分,請注意命名

步驟2: 上傳json文件

使用如下方式和接口即可上傳相應(yīng)包含groovy操作的json文件

  • 接口:/service/siesta/rest/v1/script
  • 方法:POST
  • 文件:將步驟1中準備的文件作為POST的內(nèi)容傳入

步驟3: 執(zhí)行g(shù)roovy文件

使用如接口即可執(zhí)行在步驟2中上傳的groovy腳本

  • 接口:/service/siesta/rest/v1/script/腳本名稱/run
  • 方法:POST

此處需要注意腳本名稱也會是執(zhí)行接口中的一部分,命名變得灰常重要。

使用示例

這里使用上述方式來演示一下如何在Nexus中創(chuàng)建一個Raw類型的repository。

步驟1: 以json文件為載體,創(chuàng)建可運行的groovy腳本

因為創(chuàng)建repository需要指定blob,如果沒有指定則會使用default,但是如果項目眾多,將會導(dǎo)致default非常巨大,在前面介紹nexus的使用實踐中也給出過對于不同的repository創(chuàng)建自己的blob,所以這里創(chuàng)建如下的json文件:

liumiaocn:~ liumiao$ cat rawrepotest1.json 
{
 "name": "rawrepotest1",
 "type": "groovy",
 "content": "def rawStore = blobStore.createFileBlobStore('rawrepotest1', 'raw');repository.createRawHosted('rawrepotest1', rawStore.name);"
}
liumiaocn:~ liumiao$

建議:因為Nexus的這種使用方式本身就不是非常完整的方式,建議使用的過程中諸如rawrepotest1全部一致,這樣blob和repository的關(guān)系也比較清楚,無非多上傳幾個大小可以忽略不計的json文件而已。

步驟2: 上傳json文件

liumiaocn:~ liumiao$ curl -X POST -u admin:admin123 --header "Content-Type: application/json" http://localhost:32004/service/siesta/rest/v1/script -d @rawrepotest1.json
liumiaocn:~ liumiao$

步驟3: 執(zhí)行g(shù)roovy文件

liumiaocn:~ liumiao$ curl -X POST -u admin:admin123 --header "Content-Type: text/plain" http://localhost:32004/service/siesta/rest/v1/script/rawrepotest1/run
{
 "name" : "rawrepotest1",
 "result" : "RepositoryImpl$$EnhancerByGuice$$13e8178d{type=hosted, format=raw, name='rawrepotest1'}"
}liumiaocn:~ liumiao$

結(jié)果確認

blob確認

已經(jīng)生成相應(yīng)的blob:rawrepotest1

repository確認

已經(jīng)生成相應(yīng)的raw方式的repository:rawrepotest1

小結(jié)

Nexus中結(jié)合groovy能夠?qū)崿F(xiàn)Api方式的集成,但是這種方式在使用上還有諸多的不變,多次執(zhí)行是否出錯等都成為groovy腳本確認的事項,相關(guān)功能是否會強化可能還需要看nexus后續(xù)版本的支持情況,和groovy的結(jié)合方式會不會是功能過度時期的對應(yīng)方式還需進一步觀察。

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接

標簽:綏化 撫順 蕪湖 孝感 福州 南充 巴中 晉城

巨人網(wǎng)絡(luò)通訊聲明:本文標題《Nexus使用Api進行操作》,本文關(guān)鍵詞  Nexus,使用,Api,進行,操作,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Nexus使用Api進行操作》相關(guān)的同類信息!
  • 本頁收集關(guān)于Nexus使用Api進行操作的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    揭东县| 江孜县| 来凤县| 大方县| 南漳县| 建瓯市| 庆云县| 天津市| 遂溪县| 清原| 云梦县| 砀山县| 易门县| 凌源市| 沈丘县| 清原| 河北省| 鹤山市| 德江县| 丰原市| 昔阳县| 延庆县| 鞍山市| 翼城县| 衡水市| 微博| 霍州市| 岳普湖县| 边坝县| 会昌县| SHOW| 昌都县| 四川省| 宁安市| 平安县| 上虞市| 海南省| 井陉县| 郸城县| 建水县| 宾川县|