Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 23.04.2018, 17:34
Аватар для maxminimus
Аспирант
Отправить личное сообщение для maxminimus Посмотреть профиль Найти все сообщения от maxminimus
 
Регистрация: 16.06.2016
Сообщений: 30

Где ошибка в кроссдоменном запросе?
Нужно чтобы js-клиент типа phonegap-приложения делал запрос на некоторый сервер в интернете через XMLHttpRequest, и чтобы производилась базовая аутентификация, и чтобы сервер обратно передавал данные клиенту

Сейчас сервер создает папку но клиент не получает ничего кроме пустого ответа

Где ошибка?

var php_зарегистрироваться = function()
	{
	var запрос = new XMLHttpRequest()
    	запрос.open('POST', 'http://localhost:2222/зарегистрироваться.php')  
    	запрос.withCredentials = true
    	запрос.send()
    	запрос.onreadystatechange = function()
	        {
	          if(запрос.readyState === 4)
	            {
	            	var ответ = запрос.responseText

	            	if(ответ === '')
		            	{
		            		alert('ошибка')
		            	}
		            else
			            {
			            	alert(ответ)
			            }
	            }
	        }
	}


<?php
if(empty($_SERVER['PHP_AUTH_USER']))           
	{	
		header('WWW-Authenticate: Basic realm="WWW-Authenticate"');    
		header ('HTTP/1.0 401 Unauthorized'); 
		exit();                                                
	}

$id = md5($_SERVER['PHP_AUTH_USER'] . $_SERVER['PHP_AUTH_PW']);

//проверка логина и пароля

mkdir($id); 
print "$id";

?>

Последний раз редактировалось maxminimus, 23.04.2018 в 17:37.
Ответить с цитированием
  #2 (permalink)  
Старый 23.04.2018, 19:33
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,662

Например браузеру для принятия кросс-доменных запросов требуются заголовки контроля доступа в ответах сервера. https://learn.javascript.ru/xhr-crossdomain
Ответить с цитированием
  #3 (permalink)  
Старый 23.04.2018, 21:36
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от maxminimus
Где ошибка?
В логике, читайте, что такое базовая аутентификация.
Ответить с цитированием
  #4 (permalink)  
Старый 24.04.2018, 09:11
Аватар для maxminimus
Аспирант
Отправить личное сообщение для maxminimus Посмотреть профиль Найти все сообщения от maxminimus
 
Регистрация: 16.06.2016
Сообщений: 30

Сообщение от Rise Посмотреть сообщение
Например браузеру для принятия кросс-доменных запросов требуются заголовки контроля доступа в ответах сервера. https://learn.javascript.ru/xhr-crossdomain
Проблема в том что мое клиентское приложение не имеет своего адреса (Origin), это не сайт открытый из интернета, это например phonegap-приложение.

Как быть?
Мне нужно простое альтернативное решение.

Последний раз редактировалось maxminimus, 24.04.2018 в 09:15.
Ответить с цитированием
  #5 (permalink)  
Старый 24.04.2018, 11:56
Аватар для maxminimus
Аспирант
Отправить личное сообщение для maxminimus Посмотреть профиль Найти все сообщения от maxminimus
 
Регистрация: 16.06.2016
Сообщений: 30

Сообщение от laimas Посмотреть сообщение
В логике, читайте, что такое базовая аутентификация.
Ты наверное не понял:

Этот способ работает нормально и это описано в статье Кантора про кроссдоменные запросы.

То есть сайт-приложение может делать запрос данных на своем сервере через базовую аутентификацию.

Но для html-приложения открытого с рабочего стола это невозможно сделать таким способом, видимо, вопрос в этом, надо уточнить.

в phonegap-приложении это наверное можно преодолеть через "белый лист", попробую

Последний раз редактировалось maxminimus, 24.04.2018 в 12:27.
Ответить с цитированием
  #6 (permalink)  
Старый 24.04.2018, 12:47
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Это вы видимо не понимаете, речь то идет о приложении, причем тут кроссдоменность, ajax и т.д.?
Ответить с цитированием
  #7 (permalink)  
Старый 24.04.2018, 13:52
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,662

maxminimus,
Если нет Origin значит нет и CORS, проблема в чем-то другом.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с массивом. Где ошибка ? Cepreu Общие вопросы Javascript 2 07.03.2015 17:19
Работа с массивом. Где ошибка ? Cepreu Общие вопросы Javascript 4 07.03.2015 17:17
Ребят где ошибка в скрипте? xddanik Events/DOM/Window 7 12.12.2014 15:50
Где ошибка? gogi Общие вопросы Javascript 8 04.02.2009 12:21
Где ошибка не пойму Алексей Общие вопросы Javascript 8 30.09.2008 14:57