我正在使用SimpleHTTPServer
测试我正在处理的某些网页。效果很好,但是我需要执行一些跨域请求。这需要使用允许页面访问的域设置Access-Control-Allow-Origin
header 。
有没有一种简单的方法可以使用SimpleHTTPServer设置 header 并提供原始内容? header 在每个请求上都相同。
最佳答案
这有点麻烦,因为它会更改end_headers()
的行为,但我认为它比复制和粘贴整个SimpleHTTPServer.py
文件要好一些。
我的方法在子类中覆盖end_headers()
,并在其中调用send_my_headers()
,然后再调用父类(super class)的end_headers()
。
也不是1-2行,但少于20行。主要是样板。
#!/usr/bin/env python
import SimpleHTTPServer
class MyHTTPRequestHandler(SimpleHTTPServer.SimpleHTTPRequestHandler):
def end_headers(self):
self.send_my_headers()
SimpleHTTPServer.SimpleHTTPRequestHandler.end_headers(self)
def send_my_headers(self):
self.send_header("Access-Control-Allow-Origin", "*")
if __name__ == '__main__':
SimpleHTTPServer.test(HandlerClass=MyHTTPRequestHandler)
关于python - 我可以使用python的SimpleHTTPServer设置 header 吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12499171/