如何解决Cherrypy中同源策略导致的跨域问题?

摘要:# 添加:cherrypy.response.headers["Access-Control-Allow-Origin"] = "*"
# 添加: cherrypy.response.headers["Access-Control-Allow-Origin"] = "*" cherrypy.response.headers["Access-Control-Allow-Methods"] = "GET, POST, OPTIONS" cherrypy.response.headers["Access-Control-Allow-Headers"] = "Content-Type" cherrypy.response.headers["Access-Control-Allow-Credentials"] = "true" 例如: import cherrypy import os import subprocess import change_format class PreAnnoAsyncHandle: @cherrypy.expose @cherrypy.tools.json_out() def index(self, scene_dir, frame, frame_num): ''' cherrypy - 解决同源策略跨域问题 ''' # ------------------------------------------------------------------------------ cherrypy.response.headers["Access-Control-Allow-Origin"] = "*" cherrypy.response.headers["Access-Control-Allow-Methods"] = "GET, POST, OPTIONS" cherrypy.response.headers["Access-Control-Allow-Headers"] = "Content-Type" cherrypy.response.headers["Access-Control-Allow-Credentials"] = "true" # ------------------------------------------------------------------------------ frame_num = int(frame_num) try: # 同步数据:将标注后的.label文件同步到本地 res_state = subprocess.call(f'sh async_minio_data.sh {scene_dir}', shell=True) print(res_state) # label文件格式转换:将同步后的.label文件转换成本地的.pcd文件 # frame: 当前frame # frame_num: 从当前帧开始标注frame_num+1帧 root_dir = "/data/sse-images/" pcd_dir = root_dir + scene_dir + '/lidar' label_points_dir = root_dir + scene_dir + '/label_points' pcd_labels_dir = "/data/sse-internal/" + scene_dir + '/lidar/' pcd_list = [] file_names = os.listdir(pcd_dir) for file_name in file_names: file_name = str(file_name) if file_name.endswith('.pcd'): pcd_list.append(file_name) pcd_list = sorted(pcd_list) # pcd_name_list:存放pcd名称(不包含.pcd后缀) pcd_
阅读全文