CORS 오류...가 나오네요!
582
24 câu hỏi đã được viết
안녕하세요! 궁금한점이 생겨서 문의 드립니다.. 얼마전까지만 해도 오류가 나오지 않던게.. 갑자기 오류가 나와서 아무리 찾아도 해결이 안되서 질문 드립니다.
오류가 CORS가 나오는데.. 똑같이 작성한거에서 오류가 안나던데 나오니까 당황스럽네요..!

코드 입니다.
-python-
from flask import Flask, request, render_template
import openai
openai.api_key = "" (키값은 질문사항 때문에 비웠습니다.)
app = Flask(__name__)
@app.route("/translater", methods=["post"])
def translater():
data = request.json
language = data["language"]
text = data["text"]
prompt = f"{text}\n\nTranslate this sentence into {language}"
response = openai.ChatCompletion.create(
model="gpt-3.5-turbo",
messages=[
{
"role": "system",
"content": "you are a translater"
},
{
"role": "user",
"content": prompt
}
],
max_tokens=500,
)
return response["choices"][0]["message"]["content"]
@app.route("/web")
def web():
return render_template("index.html")
@app.route("/")
def index():
return "Hello World"
app.run(host="0.0.0.0", port=8080)
-HTML-
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>번역기</title>
</head>
<body>
번역하는 사이트다! <br />
<textarea id="text" style="width: 500px; height: 200px;"></textarea> <br />
어느 언어로 번역하겠습니까? <br />
<input id="language" type="text"/> <br />
번역 하기 <br />
<button id="button">번역하기</button> <br />
결과물 보기 <br />
<textarea id="result" style="width: 500px; height: 200px;"></textarea>
<script>
let textareaTag = document.getElementById("text");
let languageTag = document.getElementById("language");
let buttonTag = document.getElementById("button");
let resultTag = document.getElementById("result");
buttonTag.addEventListener("click", async function () {
let text = textareaTag.value;
let language = languageTag.value;
await fetch("http://127.0.0.1/translater", {
"method": "post",
"headers": {
"Content-Type": "application/json"
},
body: JSON.stringify({ text, language})
})
.then((response) => response.text())
.then((data) => {
resultTag.value = data;
});
});
</script>
</body>
</html>
Câu trả lời 1
0
작성자 분의 코드와 제 코드와의 차이점은, flask의 port 번호가 8080과 80으로 서로 다릅니다.
CORS는 서로 다른 웹사이트로 요청을 보낼 때 나는 에러입니다.
8080으로 port를 열었는데, fetch로는 80 (포트 번호 미지정시 기본 포트)으로 요청을 보내고 있습니다.
flask port는 8080으로 여셨고
html의 javascript에서
await fetch("http://127.0.0.1/translater", {
라고 했는데, 뒤에 포트 번호가 안 붙은 경우의 default port는 80번이라서, 서로 다른 주소라서 그래요.
웹에서 url 뿐만 아니라, 포트 번호가 다른 경우에도 다른 주소입니다!
flask의 port 번호를 80으로 변경하거나,
fetch에서 링크를
"http://127.0.0.1:8080/translater"
라고 하시면 됩니다!
0
빠른답변 감사합니다~!
말씀하신대로 서버주소를 8080으로 변경하니까 해결했습니다~!!
다른포트가 연결되어 있어서 그런지.. 80포트로는 열리지가 않아서 변경하니까 문제가 발생된거 같네요..!!
출력값 문의
0
6
1
인코딩을 다 꼭 해봐야하는지
0
7
1
LLM 시대에서 머신러닝 개념 이해 필요성 문의
0
9
0
섹션7 퀴즈에 나오는 "GPT for Sheets and Docs"
0
13
1
질문입니다!
0
16
1
25-2 분기커버리지
0
14
0
25-2 이론 재탕
0
20
1
25-1 이론 재탕
0
20
1
헤르메스 구글 워크스페이스 연결 관련
0
20
1
강의 잘보고 있습니다. 강의 파일을 어디서 찾아야 되는지 몰라서 여쭤 봅니다.
0
16
1
수강 강의 다운로드
0
27
2
서브넷 마스크
0
28
1
모의고사 1회 계산문제 2개 맞았는데
0
42
2
기존 미국주식 자동매매 프로그램과 같은 AWS 서버에서 돌리려고 할때
1
32
1
연애인 사주는 그냥 넣어도 상관없나요?
0
34
1
14강. 업체 연결이 필요하신 분은 개인톡으로 문의해주세요.
0
33
1
안녕하세요? 강사님 질문있습니다.(인코딩관련)
0
50
2
인프당 무당 캐릭터 뽑는 프롬프트
0
40
2
강의자료 문의
0
41
1
업캐스팅 문제 예시 4번 부모 호출
0
41
1
ChatGPT 프롬프트? 설정관련
0
381
1
gpt api를 파이썬에서만 사용할 수 있나요?
0
406
1
긴 문장을 번역하고 싶습니다!
0
1090
1
500 Internal Server Error
0
711
1

