[Jquery] 외부에서 서버로 요청하기(?)

저번 글에 이어서, Frontend에서 backend로 요청하다가 생각난 부분인데, 이걸 따로 어떻게 이름을 지어야 할 지 몰라서, 대충 지어뒀다.

설명을 하자면, frontend에서 하드코딩으로 backend에다 요청을 한다면, 그 주소밖에 사용을 할 수 없을 것이다.

그것이 프로덕션에서 고정적으로 사용하는 도메인이 있다면, 그냥 하드코딩을 해도 좋지만, 내 경우는 도커에서 돌아가기에, 그 도커 웹서버의 IP가 달라 질 수 있으며, 도메인을 연결한다면? 골치가 아파지는것이다.

또한, 내 경우는 jquery Ajax로 url을 하드코딩 하였다가, 로컬 개발환경에선 멀쩡이 동작하지만 다른 호스트에서 접속을 진행하게 되면 localhost로 접속을 하니 당연히(!) 외부 클라이언트에서는 서버가 돌아가지 않으니 접속이 안된다. (초보적인 실수다!)

그래서 바로 전 글과 같이 nginx Reverse Proxy를 사용하여, 같은 호스트에서 따로 처리를 할 수있게 되었다.

원래는

backend:7000/api

였지만, reverse proxy를 사용하여

webserver/api

로 보낼 수 있게 되었다.

그러므로, 밖에서 볼때는 backend와 frontend가 같은 서버에서 동작하는 것 처럼 보이기에,

jquery로 Ajax를 사용할 때, webserver와 같은곳으로 Request를 보내면 되는 것이다.


윗부분이 이해가 잘 되지 않는다면, 이렇게 보자

ajax url -> http://backend:7000/api

로 되어있던 부분이 proxymanger를 통해서, frontend와 같은서버 처럼 보이니,

ajax url -> http://frontend/api 로 바꿀 수 있다.

그래서, 어떻게 하냐?

let address = $(location).attr('host');


$.ajax({
    url: `http://${address}/api/login`

이런식으로, address 변수에 값을 host로 넣고,
같은 곳으로 requst를 보내면 되기에, address뒤에 api/login으로 보낼 수 있는것이다.

정신없이 쓴 글이라 나도 잘 이해가 안된다 ㅋㅋㅋㅋㅋ

Read more

[VOIP] Korea-WAN-VoIP

일본인 친구들과 이야기 하다보니, VoIP로 WAN을 만들 수 있지 않을까 싶어서 프로젝트를 시작 해봤다. VoIP를 VPN을 묶어서 WAN으로 만들 수 있지 않을까? 생각 해보니, 이미 일본측에서는 해당 프로젝트를 진행하고 있었다. 한국쪽에서도 해당 프로젝트를 진행해보기 위해서, 디스코드 서버를 생성하였다. Korea-WAN-VoIP 먼저, 용어 정리를 해보고 시작하자. PBX : Private Branch Exchange 의 약자로,

By dobob

[Yubikey] Yubikey 5C 사용기

최근에 Steam Account가 2FA를 사용해도 해킹을 당하는 일이 있어, 보안에 관심이 생겨 Yubikey를 하나 구입했다. Amazon.com에서 구매를 하였고, 해당 Hardware 키가 도착하여 리뷰를 작성한다. Yubikey Manager 자신이 사용하고 있는 OS상에서 사용할 Yubikey Manager를 다운받고 실행한다. Yubikey 5C NFC를 구매하였으므로, 해당 제품의 정보가 나오는 것을 볼 수 있다. Application -&

By dobob