最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

百度翻譯API使用詳細教程(前端vue+后端springboot)

 更新時間:2024年02月18日 11:43:44   作者:THE?WHY  
這篇文章主要給大家介紹了關于百度翻譯API使用的相關資料,百度翻譯API是百度面向開發(fā)者推出的免費翻譯服務開放接口,任何第三方應用或網站都可以通過使用百度翻譯API為用戶提供實時優(yōu)質的多語言翻譯服務,需要的朋友可以參考下

1.資格獲取

首先我們需要登錄百度翻譯開放平臺,獲取開發(fā)者資格:

訪問

百度翻譯開放平臺

然后進行注冊(如果有百度賬號的話可以直接登錄)

注冊成功后點擊“產品服務”:

跳轉到通用文本API界面:

在頁面底部點擊“立即使用”即可選擇服務進行使用

通用文本API有三種服務可供選擇:

個人用戶可以使用前兩種,高級版的使用需要個人認證(實名認證)

2.簡單使用

點擊“管理控制臺”,打開“開發(fā)者信息”界面:

即可看到你的APP ID和密鑰信息,在調用接口的時候需要用到;

點擊“我的服務”中的通用文本翻譯,即可看到服務使用情況及明細

如果對于翻譯的術語有特殊要求,可以點擊“我的語料庫”,并新建術語庫:

這樣我們設置的術語即可干預翻譯結果;

3.編程實現

百度翻譯開放平臺

前往以上網址查看通用翻譯API的開發(fā)文檔

3.1 前端代碼

開發(fā)環(huán)境:Vue.js + Uniapp

(uniapp快速上手:uni-app官網

通過一個文本輸入框接受輸入內容,然后調用后端接口,進行翻譯:

<template>
  <view>
    <!--輸入框-->
		<uni-easyinput 
		type="textarea"  
		v-model="translate_source" 
		placeholder="請輸入想要翻譯的內容"
		suffixIcon="search"
		borderColor="grey"
		@input="input"></uni-easyinput>
  	<!--翻譯按鈕-->
  	<button type="primary" class="translate_button" @click="translate">開始翻譯</button>
    <!--翻譯內容展示-->
    <view style="margin-top: 50rpx;">
			<uni-section title="翻譯內容如下:" type="line" class="translate_line">
			<view class="translate_answer">
				<textarea disabled="true" :value="translated_content"></textarea>
			</view>
			</uni-section>
		</view>
  </view>
</template>

<script>
	export default {
		data() {
			return {
				translate_source:"",
				translated_content:""
			}
		},
		methods: {
			translate()
			{
				var q = this.translate_source
				var from = "en"
				var to = "zh"
				
				var url = "http://localhost:8081/translate"
				if (q.length == 0)
				{
					uni.showModal({
						title:"錯誤!",
						content:"輸入內容不能為空!",
						complete() {
							this.translate_source = ""
						}
					})
				}
				else{
					let that = this
					uni.request({
						url:url,
						method:"POST",
						data:{
							q:q,
							from:from,
							to:to
						},
						success(e) {
							var result = e.data.trans_result[0].dst;
							that.translated_content = result;
						},
						fail(){
							uni.showModal({
								title:"錯誤!",
								content:"網絡錯誤!",
								complete() {
									this.translate_source = ""
								}
							})
						}
					})
				}
			}
		}
	}
</script>
  

需要傳往后端的請求參數有:

3.2 后端代碼

開發(fā)環(huán)境:springboot + Hutools

我使用的是正式版的idea,社區(qū)版的springBoot需要自己搭建,搭建教程可以自行搜索,需要使用正式版idea可以參考評論區(qū)的地址進行下載;

首先創(chuàng)建springBoot項目:

倉庫管理以及JDK版本視自己情況而定,本示例中用的是Maven倉庫,JDK17;

SpringBoot版本默認即可,可以勾選上Spring Web:

注意:3.1.0版本的springboot可能需要使用JDK17才行

使用Maven的話需要本地安裝maven,到file-settings-Mavens中查看是否有本地maven,如果需要修改的話改一下maven的路徑以及settings.xml配置文件的路徑;對于maven的安裝這里不再贅述,其他教程很多,如果遇到問題可以留言

其次如果遇到JDK版本的問題,可以打開file-project Structure,查看project和modules的JDK、SDK版本

要確保版本統(tǒng)一(因為如果安裝過多個版本的JDK,可能初始化的時候會有問題)

配置完成后可以啟動Application查看是否正常

然后在pom.xml文件中導入Hutools的依賴:

<dependency>
  <groupId>cn.hutool</groupId>
  <artifactId>hutool-all</artifactId>
  <version>5.7.16</version>
</dependency>

(Hutools是一個Java工具類庫,還是挺好用的)

之后就可以進行接口開發(fā)了,代碼如下:

@RestController
public class TranslationController {

    @PostMapping("/translate")
    public Object translate(@RequestBody Map<String,String> data)
    {
        //獲取請求參數
        String q = data.get("q");
        String from = data.get("from");
        String to = data.get("to");
        //隨機數
        Random random = new Random(10);
        String salt = Integer.toString(random.nextInt());
        //MD5加密
        //自定義的全局變量 appid和密鑰
        String appid = BaiduContent.APPID + q + salt + BaiduContent.SECRET;
        String sign = SecureUtil.md5(appid);

        //封裝請求參數
        MultiValueMap<String, String> paramMap = new LinkedMultiValueMap<>();
        paramMap.add("q",q);
        paramMap.add("from",from);
        paramMap.add("to",to);
        paramMap.add("appid",BaiduContent.APPID);
        paramMap.add("salt",salt);
        paramMap.add("sign",sign);
        String url = "http://api.fanyi.baidu.com/api/trans/vip/translate";
        //封裝請求頭
        HttpHeaders headers = new HttpHeaders();
        headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED);

        HttpEntity<MultiValueMap<String, String>> httpEntity = new HttpEntity<>(paramMap,headers);

        //調用百度翻譯API,發(fā)送請求,得到結果
        RestTemplate restTemplate = new RestTemplate();
        ResponseEntity<Object> response = restTemplate.postForEntity(url, httpEntity, Object.class);

        return response.getBody();
    }
    
}

首先接受前端傳來的請求參數,然后參照開發(fā)文檔即可;

請求翻譯接口的參數如下:

sign的設置開發(fā)文檔里寫的也很詳細:

示例代碼中使用的是POST請求方式,注意按照開發(fā)文檔中的要求配置:

接口請求成功后即可得到翻譯結果返回給前端進行展示了

4.結果展示

輸入內容——點擊翻譯——展示翻譯結果

總結

到此這篇關于百度翻譯API使用的文章就介紹到這了,更多相關百度翻譯API使用內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Java Kafka 消費積壓監(jiān)控的示例代碼

    Java Kafka 消費積壓監(jiān)控的示例代碼

    這篇文章主要介紹了Java Kafka 消費積壓監(jiān)控,本文通過示例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-07-07
  • SpringBoot擴展點EnvironmentPostProcessor實例詳解

    SpringBoot擴展點EnvironmentPostProcessor實例詳解

    這篇文章主要介紹了SpringBoot擴展點EnvironmentPostProcessor的相關知識,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-04-04
  • 四個Java必須知道的負載均衡算法分享

    四個Java必須知道的負載均衡算法分享

    我們在設計系統(tǒng)的時候,為了系統(tǒng)的高擴展性,會創(chuàng)建無狀態(tài)的系統(tǒng)。但是,要使系統(tǒng)具有更好的可擴展性,除了無狀態(tài)設計之外,還要考慮采用什么負載均衡算法,本文就帶領大家認識以下常見的4種負載均衡算法
    2023-01-01
  • springboot上傳zip包并解壓至服務器nginx目錄方式

    springboot上傳zip包并解壓至服務器nginx目錄方式

    這篇文章主要介紹了springboot上傳zip包并解壓至服務器nginx目錄方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-04-04
  • 詳解Spring配置事務的五種方式

    詳解Spring配置事務的五種方式

    這篇文章主要為大家詳細介紹了Spring配置事務的五種方式,感興趣的小伙伴們可以參考一下
    2016-06-06
  • Springboot并發(fā)調優(yōu)之大事務和長連接

    Springboot并發(fā)調優(yōu)之大事務和長連接

    這篇文章主要介紹了Springboot并發(fā)調優(yōu)之大事務和長連接,重點分享長事務以及長連接導致的并發(fā)排查和優(yōu)化思路和示例,具有一定的參考價值,感興趣的可以了解一下
    2022-05-05
  • Java多線程之火車售票系統(tǒng)

    Java多線程之火車售票系統(tǒng)

    這篇文章主要為大家詳細介紹了Java多線程之火車售票系統(tǒng),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-07-07
  • java.io.EOFException: Unexpected end of ZLIB input stream異常解決

    java.io.EOFException: Unexpected end of 

    本文主要介紹了java.io.EOFException: Unexpected end of ZLIB input stream異常解決,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-05-05
  • Java延遲隊列原理與用法實例詳解

    Java延遲隊列原理與用法實例詳解

    這篇文章主要介紹了Java延遲隊列原理與用法,結合實例形式詳細分析了延遲隊列的概念、原理、功能及具體使用方法,需要的朋友可以參考下
    2018-09-09
  • 如何實現Java線程安全問題

    如何實現Java線程安全問題

    這篇文章主要介紹了如何實現Java線程安全問題,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-12-12

最新評論

岑巩县| 当涂县| 友谊县| 万源市| 武鸣县| 滁州市| 成都市| 芷江| 普陀区| 南乐县| 深州市| 东平县| 海兴县| 永嘉县| 克山县| 双城市| 西城区| 台东县| 尖扎县| 车致| 新源县| 临夏市| 绍兴县| 佛学| 赤城县| 日喀则市| 琼结县| 三门峡市| 上犹县| 祁东县| 黄平县| 响水县| 繁峙县| 青神县| 东山县| 大厂| 嘉禾县| 甘南县| 巴中市| 隆化县| 霍林郭勒市|