[英]AWS Access to XMLHttpRequest at from origin has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header
[英]Blocked by CORS policy: No"Access-Control-Allow-Origin" Using Flask
我正在嘗試制作一個 flask web 應用程序,它可以下載整個 web 頁面並將其呈現在本地主機上以裁剪元素。請求模塊從站點獲取所有數據,除了它所說的一些數據
以下是我為 flask 應用程序准備的代碼。 我也試過 flask_cros 但它似乎沒有幫助。
from flask_socketio import SocketIO, emit
from flask_session import Session
import requests
from bs4 import BeautifulSoup
from urllib.parse import urlparse
from flask_cors import CORS,cross_origin
app= Flask(__name__)
app.config["SECRET_KEY"] = os.getenv("SECRET_KEY")
app.config["CORS_HEADERS"]="Content-Type"
socketio=SocketIO(app)
session=Session(app)
cors = CORS(app)
dir= os.path.abspath(os.getcwd())
@app.route("/")
def index():
return render_template("index.html")
@app.route("/crop",methods=["POST"])
@cross_origin()
def crop():
if request.method=="POST":
outfile=open("result.txt","w")
outfile.write("<iframe>")
outfile.close()
dummy= open("templates/down.html",'w')
dummy.close()
global link
link = str(request.form.get("url"))
r= requests.get(link,allow_redirects=True,headers={"User-Agent":"Chrome/42.0.2311.135"})
if r.status_code==405:
return render_template("exception.html")
soup = BeautifulSoup(r.content,"html.parser")
outfile=open("links.html","w")
for a in soup.findAll("link",attrs={'href':True},rel="stylesheet"):
if a['href'][0:4]!="http":
dom= urlparse(link)
wurl=dom.scheme+"://"+dom.netloc
r1=requests.get(wurl+a['href'],headers={"User-Agent":"Chrome/42.0.2311.135"})
if r1.status_code==200:
a['href']= wurl + a['href']
print(a)
outfile.write(str(a))
else:
a['href']= link + a['href']
outfile.write(str(a))
else:
outfile.write(str(a))
outfile.close()
body= soup.prettify("utf-8")
with open("templates/down.html",'wb') as file:
file.write(body)
return render_template("base.html") ```
您想讓 flask 發送丟失的 header:
Access-Control-Allow-Origin: *
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.