Загружать файлы в облако из веб-приложения

Мне нужно загрузить файлы из приложения HTML 5 (используемого на настольном/мобильном/планшетном устройстве) (нет серверной части) в онлайн-хранилище. Подойдет любое хранилище, но на данный момент предпочтительнее использовать бесплатный сервис. Необходимый рабочий процесс:

загрузить файл в хранилище -> получить общедоступный URL-адрес файла -> поделиться общедоступным URL-адресом в facebook с API facebook.

Часть facebook, которую я рассмотрел, но мне нужно куда-то поместить свои файлы. Я пытался использовать API box.net, но получаю сообщение об ошибке из-за межсайтового запроса:

( http://developers.box.net/w/page/12923936/ApiFunction_get_ticket )

function get_ticket(api_key){
   $.ajax({
      url: 'https://www.box.net/api/1.0/rest?action=get_ticket&api_key=' + api_key,
      success: function(response){
         console.log(response);
      }
   });
}

дает в консоли хром:

XMLHttpRequest cannot load https://www.box.net/api/1.0/rest?action=get_ticket&api_key=(my_key). Origin http://localhost:8000 is not allowed by Access-Control-Allow-Origin.
GET https://www.box.net/api/1.0/rest?action=get_ticket&api_key=ynu54ytflrz9fzpdzy5raf1hc1rmed9i undefined (undefined)

Любое решение этой проблемы будет приветствоваться.


person tiagoboldt    schedule 01.04.2011    source источник


Ответы (2)


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

Вот почему вы не можете загрузить библиотеку FB JS на свой домен, а вместо этого каждый раз загружаете ее с их веб-сайта. Вот почему я не могу сделать то, что пытался сделать в вопросе.

Не стесняйтесь дополнять мое объяснение, если у вас есть какие-либо подробности по этому вопросу :)

person tiagoboldt    schedule 04.04.2011
comment
Если тип данных — JSONP, то javascript может взаимодействовать с другими доменами. - person James P McGrath; 02.12.2011

Ошибка в консоли говорит:

Origin http://localhost:8000 is not allowed by Access-Control-Allow-Origin.

Возможно, вы могли бы попробовать загрузить свое приложение на его будущий сервер.

person Kerstomaat    schedule 01.04.2011