У меня были проблемы с CORS для моего сервера, и я попытался включить «Access-Control-Allow-Origin». Когда я запустил приведенный ниже код, он ожидал другого входного аргумента, хотя документация показывает, что ему нужны только 2.
#!/usr/bin/python
import socketserver
import socket
import http.server
import sys
Handler = http.server.SimpleHTTPRequestHandler
Port = 8005
localHost = socket.gethostname()
httpd = socketserver.TCPServer(("localhost", Port), Handler)
Handler.send_header("Access-Control-Allow-Origin", "*")
Handler.end_headers()
httpd.handle_request()
request = httpd.recv(1000000)
httpd.serve_forever()
Когда я запускаю это, я получаю следующую проблему:
File "serverDP.py", line 29, in <module>
Handler.send_header("Access-Control-Allow-Origin", "*")
TypeError: send_header() missing 1 required positional argument: 'value'
Я пробовал код отсюда и Github, но мне не повезло. Спасибо за помощь.
Редактировать
Я добавил класс, и теперь он выглядит так:
class CORSRequestHandler(http.server.SimpleHTTPRequestHandler):
def send_my_headers(self):
print("This is working :/")
self.send_header("Access-Control-Allow-Origin", "*")
http.server.SimpleHTTPRequestHandler.end_headers(self)
def end_headers(self):
self.send_my_headers()
Handler = CORSRequestHandler
Handler.send_my_headers(Handler)
У меня все еще есть та же проблема , Однако я не совсем уверен, что я должен передать в функцию "Handler.send_my_headers ()"