rest controller practice : properties

This commit is contained in:
haerong22
2021-03-21 16:49:22 +09:00
parent cb2662c988
commit cad04d75ee
5 changed files with 1580 additions and 2 deletions

View File

@@ -21,7 +21,7 @@ public class CommonInterceptor implements HandlerInterceptor {
log.info("#########################################");
log.info(request.getMethod() + " " + request.getRequestURI());
if (!validJWT(request)) {
if (!request.getRequestURI().equals("/api/login") && !validJWT(request)) {
throw new AuthFailException("인증정보가 정확하지 않습니다");
}
return true;

View File

@@ -0,0 +1,14 @@
package com.example.restcontroller.common.properties;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
@Data
@Component
@ConfigurationProperties("naver-api")
public class NaverAppProperties {
private String clientId;
private String clientSecret;
}

View File

@@ -1,6 +1,7 @@
package com.example.restcontroller.extra.controller;
import com.example.restcontroller.common.model.ResponseResult;
import com.example.restcontroller.common.properties.NaverAppProperties;
import com.example.restcontroller.extra.model.KakaoTranslateResponse;
import com.example.restcontroller.extra.model.NaverTranslateInput;
import com.example.restcontroller.extra.model.NaverTranslateResponse;
@@ -22,6 +23,8 @@ import org.springframework.web.client.RestTemplate;
@RequiredArgsConstructor
public class ApiExtraNaverController {
private final NaverAppProperties naverAppProperties;
@GetMapping("/api/extra/naver/translate")
public ResponseEntity<?> chapter4_9(@RequestBody NaverTranslateInput naverTranslateInput) {
// curl "https://openapi.naver.com/v1/papago/n2mt" \
@@ -51,4 +54,29 @@ public class ApiExtraNaverController {
return ResponseResult.success(naverTranslateResponse);
}
@GetMapping("/api/extra/naver/translate/property")
public ResponseEntity<?> chapter5_1(@RequestBody NaverTranslateInput naverTranslateInput) {
String clientId = naverAppProperties.getClientId();
String clientSecret = naverAppProperties.getClientSecret();
String url = "https://openapi.naver.com/v1/papago/n2mt";
RestTemplate restTemplate = new RestTemplate();
MultiValueMap<String, String> parameters = new LinkedMultiValueMap<>();
parameters.add("source", "ko");
parameters.add("target", "en");
parameters.add("text", naverTranslateInput.getText());
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED);
headers.add("X-Naver-Client-Id", clientId);
headers.add("X-Naver-Client-Secret", clientSecret);
HttpEntity<?> formEntity = new HttpEntity<>(parameters, headers);
NaverTranslateResponse naverTranslateResponse = restTemplate.postForObject(url, formEntity, NaverTranslateResponse.class);
return ResponseResult.success(naverTranslateResponse);
}
}

View File

@@ -39,4 +39,9 @@ logging:
org.hibernate.type: trace
file:
name: ./logs/spring-jpa.log
name: ./logs/spring-jpa.log
######### 네이버 API
naver-api:
client-id: goQZ03tXlaISGqa0Lgau
client-secret: WPVuMeYLHS