@Forman

Как передать get-параметр второму сайту от посетителя?

Посетитель заходит на site1.com?g=x
В этот момент нужно отправить от него (не от сервера) запрос на site2.com?g=x
Я имею доступ к обоим сайтам, и могу внедрить в них любые скрипты.

Я пробовал:
var xhr = new XMLHttpRequest();
xhr.open('GET', 'https://site2.com?g=x', true);
xhr.send();

fetch('https://site2.com?g=x');

Но не помогло. Либо чего-то не хватает, либо запрос передается от сервера, а не от клиента.

Я пробовал:
<img width="1" height="1" src="https://site2.com?g=x" />

Но на это браузер блокирует запрос:
Cross-Origin Read Blocking (CORB) blocked cross-origin response https://site2.com/?g=x with MIME type text/html. See https://www.chromestatus.com/feature/5629709824032768 for more details.


Я пробовал:
<iframe src="https://site2.com?g=x" width="0" height="0"></iframe>

Но это тоже не помогло.
  • Вопрос задан
  • 98 просмотров
Пригласить эксперта
Ответы на вопрос 2
pro100chel
@pro100chel
Senior Pomidor Developer | CEO of GOVNOKOD LTD.
Надо просто после get запроса отдавать редирект через пыху при помощи заголовка Location

или же кидать html страницу с js, в котором будет делаться ajax запрос на второй сайт(это для запроса на второй сайт без перехода на него)
Ответ написан
@zkrvndm
Боты, парсеры, расширения
Вам нужно на 2-ом сайте разрешить прием данных с первого сайта при помощи заголовка Access-Control-Allow-Origin, только тогда вы сможете отправлять запросы с певрого сайта на второй, без ошибок.

Допустим на 2-ом сайте у вас есть файл handler.php укажите в начале этого файла:
<?php

header('Access-Control-Allow-Origin: *');

// Дальше ваш код...


Тогда вы с первого сайта спокойно сможете обращаться на второй сайт по адресу https://site2.com/handler.php?g=x

Подробнее тут: https://webdevkin.ru/posts/frontend/kross-domennyi...
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы