Ich versuche, eine POST-Anfrage von meiner Website zu meinem Remote-Server senden, aber ich begegne einige CORS-Probleme.Request Header-Feld Access-Control-Request-Methoden ist nicht erlaubt von Access-Control-Erlaube-Header in Preflight-Antwort
Ich suchte im Internet, fand aber keine Lösung für mein spezifisches Problem. Das ist mein Ajax-Request params:
var params = {
url: url,
method: 'POST',
data: JSON.stringify(data),
contentType: 'json',
headers: {
'Access-Control-Request-Origin': '*',
'Access-Control-Request-Methods': 'POST'
}
Auf der Back-End-Seite in das ist mein Code in Python:
@app.route(SETTINGS_NAMESPACE + '/<string:product_name>', methods=['POST', 'OPTIONS'])
@graphs.time_method()
def get_settings(product_name):
settings_data = helper.param_validate_and_extract(request, None, required=True, type=dict, post_data=True)
settings_data = json.dumps(settings_data)
response = self._get_settings(product_name, settings_data)
return output_json(response, requests.codes.ok, headers = {
'Access-Control-Allow-Origin': '*',
'Access-Control-Allow-Methods': 'POST'
})
ich einen Fehler auf meiner Konsole erhalten:
XMLHttpRequest kann nicht laden [http://path-to-my-server]. Anfrage-Header-Feld Access-Control-Request-Verfahren ist nicht erlaubt durch Access-Control-Allow-Header in Preflight Antwort
Ich habe bemerkt, dass ich 'Access-Control-Request-Headers'
auch hinzufügen können, aber ich war nicht sicher, ob es notwendig und es verursacht mir mehr Probleme, also habe ich es entfernt.
Weiß jemand, wie man dieses Problem löst?
Ihre Ajax-Anforderung nicht senden 'Zugriffs-Control' Header funktionieren sollte, nur der Server diese Header sendet. – adeneo
Danke, es hat funktioniert. posten Sie es als Antwort und ich werde zustimmen –