سلام وقت بخیر
میخواستم توکنی در هدر ست کنم و ارسال کنم
var data = '';
var config = {
method: 'post',
url: 'www.site.com',
headers: {
'token': '123'
},
data : data
};
await axios(config)
.then(function (response) {
console.log(response.data);
})
.catch(function (error) {
console.log(error);
});
و از اون با php دریافت کنم
header("Access-Control-Allow-Headers: *");
header("Access-Control-Allow-Origin: *");
echo $_SERVER['HTTP_TOKEN'];
وقتی با پستمن ارسال میکنم درسته همه چی . ولی وقتی با axios میفرستم ارور 500 زیر میده :
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at http://site.com. (Reason: CORS preflight response did not succeed).
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at http://site.com. (Reason: CORS request did not succeed).
البته وقتی $SERVER میگیرم تو لیست هست ولی وقتی اشاره میکنم به $SERVER['HTTPTOKEN'] و چیزایی ک خودم ست کردم توهدر ارور میده.
ممنون میشم دوستان راهنمایی کنید.
نمیدونم چرا ولی درست شدش با این راه
if (isset($_SERVER["HTTP_AUTHORIZATION"])) {
$a = $_SERVER["HTTP_AUTHORIZATION"];
$this->pm (200,$a);
}else{
$this->pm (200,'no');
}
حتما باید داخل isset باشه تا ارور نده
کسی میدونه چرا ؟
@mahdi12
سلام.
خطا به دلیل مشکل CORS هستش که باید رفع کنید. لینک زیر رو بررسی کنید :
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Headers
به headers در آبجکت config قسمت Access-Control-Allow-Origin رو اضافه کن
احتمالا مشکل حل بشه.
var config = {
method: 'post',
url: 'www.site.com',
headers: {
'token': '123',
'Access-Control-Allow-Origin': '*'
},
data : data
};
ممنونم بابت پاسخگویی
نه متاسفانه نشدش
اخه جالب اینه که وقتی
$SERVER
میگیرم میاد داخلش و وقتی کل نتیجشو تو فایلی هم ذخیره میکنم هست داخلش
ولی وقتی
$SERVER['HTTP_TOKEN']
میگیرم ارور میده که نیست همچین key
ارایه هم هست . بنظر نمیاد مشکل از ارسال باشه
نمیدونم چرا ولی درست شدش با این راه
if (isset($_SERVER["HTTP_AUTHORIZATION"])) {
$a = $_SERVER["HTTP_AUTHORIZATION"];
$this->pm (200,$a);
}else{
$this->pm (200,'no');
}
حتما باید داخل isset باشه تا ارور نده
کسی میدونه چرا ؟
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟