2013-02-28 1 views
0

В настоящее время я ищу проблему: У нас есть backend-приложение, которое создает XML-файлы с контентом и сохраняет их как Azure Blobs (мы не можем это изменить).Как получить доступ к XML, размещенному как azure blob с лазурного сайта

Blob образец URL: http://mytestaccount.blob.core.windows.net

Мы реализуем веб-страницы, потребляющих эти XML-файлы.

Наше текущее решение представляет собой статическую веб-страницу (без iis или любого другого сервера), размещенную на том же блобе, что и упомянутые XML-файлы.

Вопрос 1: Есть ли способ перенаправить доменное имя на нашу веб-страницу, размещенную в настоящее время как blob?

Мы думали о размещении нашего веб-приложения не как Blob, а с использованием веб-сайтов Azure. Это создает проблему междоменных запросов (мы должны получить эти файлы XML).

Сайт образец URL: http://mytestpage.azurewebsites.net

Вопрос 2: Есть ли способ загрузки XML с помощью JQuery AJAX вызова с такой веб-страницы (размещенной в Azure веб-страницы) в XML хранится как Blob?

ответ

0

Вопрос 1: Есть ли способ перенаправить доменное имя на нашу веб-страницу, размещенную в настоящее время как blob?

Да, это, безусловно, возможно сделать, однако в настоящее время существуют некоторые ограничения. См. Эту ссылку относительно настройки поддомена, который указывает на хранилище памяти: http://msdn.microsoft.com/en-us/library/windowsazure/ee795179.aspx. Обратите внимание, что в настоящее время вы не можете указывать документ по умолчанию для своего сайта с таким подходом.

Вопрос 2: Есть ли способ загрузить XML с помощью jquery ajax-вызова с такой веб-страницы (размещенной как Azure Web-страница) в xml, хранящейся как Blob?

Чтение блоба не вызовет проблемы с междоменным запросом. Проблема с перекрестным доменом придет, когда вы будете пытаться размещать или размещать некоторый контент в своем блочном хранилище.

До тех пор пока ваш контейнер blob является общедоступным, вы должны иметь доступ к блобу без каких-либо проблем. Это просто ПОЛУЧИТЬ. Однако, если ваш контейнер blob является конфиденциальным, вам нужно будет создать URI с общим доступом для доступа на блобе с разрешением «Чтение» и использовать этот URI в вашем вызове jQuery AJAX.

ОБНОВЛЕНИЕ: Чтение blob через вызов jQuery AJAX даст ошибку «Перекрестный домен».

+1

Спасибо за ваш ответ. Я все еще думаю, что вы ошибаетесь. Я сделал доказательство проверки концепции, и теперь есть путь к directy get by ajax получить xml-файл, размещенный как blob (скажем, на \t http://mystorageaccount.blob.core.windows.net/files/myfile.xml) с сайта, размещенного на сайтах Azure (http://myazurewebsite.azurewebsites.net/). При попытке получить этот файл возникает ошибка перекрестного домена. – user1438047

+0

Да, ты прав. Получил ту же ошибку, когда я попытался прочитать blob из другого домена. Я обновил свой ответ. –

+0

Я решил разместить свою страницу как Azure Web Site (роль ASP.NET). Изменил его из Free to Shared, чтобы использовать пользовательский домен. Написал общий обработчик для доступа к XML-данным blob. – user1438047

Смежные вопросы