欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

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

1.資格獲取

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

訪問

百度翻譯開放平臺(tái)

然后進(jìn)行注冊(cè)(如果有百度賬號(hào)的話可以直接登錄)

注冊(cè)成功后點(diǎn)擊“產(chǎn)品服務(wù)”:

跳轉(zhuǎn)到通用文本API界面:

在頁(yè)面底部點(diǎn)擊“立即使用”即可選擇服務(wù)進(jìn)行使用

通用文本API有三種服務(wù)可供選擇:

個(gè)人用戶可以使用前兩種,高級(jí)版的使用需要個(gè)人認(rèn)證(實(shí)名認(rèn)證)

2.簡(jiǎn)單使用

點(diǎn)擊“管理控制臺(tái)”,打開“開發(fā)者信息”界面:

即可看到你的APP ID和密鑰信息,在調(diào)用接口的時(shí)候需要用到;

點(diǎn)擊“我的服務(wù)”中的通用文本翻譯,即可看到服務(wù)使用情況及明細(xì)

如果對(duì)于翻譯的術(shù)語(yǔ)有特殊要求,可以點(diǎn)擊“我的語(yǔ)料庫(kù)”,并新建術(shù)語(yǔ)庫(kù):

這樣我們?cè)O(shè)置的術(shù)語(yǔ)即可干預(yù)翻譯結(jié)果;

3.編程實(shí)現(xiàn)

百度翻譯開放平臺(tái)

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

3.1 前端代碼

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

(uniapp快速上手:uni-app官網(wǎng)

通過一個(gè)文本輸入框接受輸入內(nèi)容,然后調(diào)用后端接口,進(jìn)行翻譯:

<template>
  <view>
    <!--輸入框-->
		<uni-easyinput 
		type="textarea"  
		v-model="translate_source" 
		placeholder="請(qǐng)輸入想要翻譯的內(nèi)容"
		suffixIcon="search"
		borderColor="grey"
		@input="input"></uni-easyinput>
  	<!--翻譯按鈕-->
  	<button type="primary" class="translate_button" @click="translate">開始翻譯</button>
    <!--翻譯內(nèi)容展示-->
    <view style="margin-top: 50rpx;">
			<uni-section title="翻譯內(nèi)容如下:" 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:"錯(cuò)誤!",
						content:"輸入內(nèi)容不能為空!",
						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:"錯(cuò)誤!",
								content:"網(wǎng)絡(luò)錯(cuò)誤!",
								complete() {
									this.translate_source = ""
								}
							})
						}
					})
				}
			}
		}
	}
</script>
  

需要傳往后端的請(qǐng)求參數(shù)有:

3.2 后端代碼

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

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

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

倉(cāng)庫(kù)管理以及JDK版本視自己情況而定,本示例中用的是Maven倉(cāng)庫(kù),JDK17;

SpringBoot版本默認(rèn)即可,可以勾選上Spring Web:

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

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

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

要確保版本統(tǒng)一(因?yàn)槿绻惭b過多個(gè)版本的JDK,可能初始化的時(shí)候會(huì)有問題)

配置完成后可以啟動(dòng)Application查看是否正常

然后在pom.xml文件中導(dǎo)入Hutools的依賴:

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

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

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

@RestController
public class TranslationController {

    @PostMapping("/translate")
    public Object translate(@RequestBody Map<String,String> data)
    {
        //獲取請(qǐng)求參數(shù)
        String q = data.get("q");
        String from = data.get("from");
        String to = data.get("to");
        //隨機(jī)數(shù)
        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);

        //封裝請(qǐng)求參數(shù)
        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";
        //封裝請(qǐng)求頭
        HttpHeaders headers = new HttpHeaders();
        headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED);

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

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

        return response.getBody();
    }
    
}

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

請(qǐng)求翻譯接口的參數(shù)如下:

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

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

接口請(qǐng)求成功后即可得到翻譯結(jié)果返回給前端進(jìn)行展示了

4.結(jié)果展示

輸入內(nèi)容——點(diǎn)擊翻譯——展示翻譯結(jié)果

總結(jié)

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

相關(guān)文章

  • Java利用多線程復(fù)制文件

    Java利用多線程復(fù)制文件

    這篇文章主要介紹了Java利用多線程復(fù)制文件,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-09-09
  • java讀取word文檔,提取標(biāo)題和內(nèi)容的實(shí)例

    java讀取word文檔,提取標(biāo)題和內(nèi)容的實(shí)例

    這篇文章主要介紹了java讀取word文檔,提取標(biāo)題和內(nèi)容的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-10-10
  • Spring Boot系列教程之7步集成RabbitMQ的方法

    Spring Boot系列教程之7步集成RabbitMQ的方法

    RabbitMQ 即一個(gè)消息隊(duì)列,主要是用來實(shí)現(xiàn)應(yīng)用程序的異步和解耦,同時(shí)也能起到消息緩沖,消息分發(fā)的作用。下面這篇文章主要給大家介紹了關(guān)于Spring Boot之7步集成RabbitMQ的相關(guān)資料,需要的朋友可以參考下
    2018-11-11
  • MyBatis-Plus插件機(jī)制及通用Service新功能

    MyBatis-Plus插件機(jī)制及通用Service新功能

    這篇文章主要介紹了MyBatis-Plus插件機(jī)制以及通用Service、新功能,本文通過實(shí)例圖文相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-07-07
  • SpringBoot超詳細(xì)分析啟動(dòng)流程

    SpringBoot超詳細(xì)分析啟動(dòng)流程

    今天小編就為大家分享一篇關(guān)于SpringBoot整個(gè)啟動(dòng)過程的分析,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2022-07-07
  • SpringCloud集成Eureka并實(shí)現(xiàn)負(fù)載均衡的過程詳解

    SpringCloud集成Eureka并實(shí)現(xiàn)負(fù)載均衡的過程詳解

    這篇文章主要給大家詳細(xì)介紹了SpringCloud集成Eureka并實(shí)現(xiàn)負(fù)載均衡的過程,文章通過代碼示例和圖文講解的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的參考價(jià)值,需要的朋友可以參考下
    2023-11-11
  • iOS socket網(wǎng)絡(luò)編程實(shí)例詳解

    iOS socket網(wǎng)絡(luò)編程實(shí)例詳解

    socket是一個(gè)針對(duì)TCP和UDP編程的接口,你可以借助它建立TCP連接等。這篇文章主要介紹了iOS socket網(wǎng)絡(luò)編程 ,需要的朋友可以參考下
    2017-03-03
  • Springmvc應(yīng)用Mongodb分頁(yè)實(shí)現(xiàn)

    Springmvc應(yīng)用Mongodb分頁(yè)實(shí)現(xiàn)

    這篇文章主要為大家詳細(xì)介紹了Springmvc應(yīng)用Mongodb分頁(yè)實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • 關(guān)于Java中修飾符的總結(jié)(fina除外)

    關(guān)于Java中修飾符的總結(jié)(fina除外)

    下面小編就為大家?guī)硪黄P(guān)于Java中修飾符的總結(jié)(fina除外)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-09-09
  • Java中BitMap(位圖)hutool版、IntMap、LongMap示例詳解

    Java中BitMap(位圖)hutool版、IntMap、LongMap示例詳解

    這篇文章主要給大家介紹了關(guān)于Java中BitMap(位圖)hutool版、IntMap、LongMap的相關(guān)資料,通過位運(yùn)算高效存儲(chǔ)和檢索整數(shù),相比于傳統(tǒng)數(shù)組,它們?cè)趦?nèi)存占用和性能上都有顯著優(yōu)勢(shì),需要的朋友可以參考下
    2024-12-12

最新評(píng)論