我正在尝试使用Spring从angular创建一个翻译器。所以在Spring中我创建了这个终点
package com.vir.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;
import com.vir.exception.ApiError;
import com.vir.model.iTranslator;
import com.vir.service.iTranslateProcessorService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
@RestController
@RequestMapping("/api")
@Api(tags = "iTranslate")
public class iTranslateController {
@Autowired
@Qualifier("iTranslatorService")
private iTranslateProcessorService itranslateProcessorService;
@ApiOperation(value = "Translate a text input.")
@ApiResponse(code = 400, message = "Generic error", response = ApiError.class)
@PostMapping(value = "/iTranslate", produces = MediaType.APPLICATION_JSON_VALUE)
public iTranslator iTranslate(@RequestBody(required = true) String text, @RequestBody(required = true) String target) {
return itranslateProcessorService.process(text, target);
}
}
我还制作了ItranslateProcessorService接口,它将调用iTranslator模型。我的问题是,在该模型中,我应该在哪里调用google API?我该怎么做才能返回google API返回的翻译或json文件? Here is the documentation of the google API
指向正确的方向会有所帮助,谢谢。
答案 0 :(得分:0)
这显然是您要发送的HTTP请求。您的接口实现将建立HTTP连接,POST请求并返回响应。
确保汇集这些HTTP连接。它们的制作成本很高。
确保您考虑如果Google翻译调用超时或失败会发生什么。
我不同意您选择的退货类型:我建议您使用ResponseEntity<T>
并将通用类型设置为对您的问题有意义的内容。
您需要知道Google翻译服务不免费。如果您打算在一段时间内完成少量翻译,则必须付费。