Ошибка «Нулевой источник не разрешен Access-Control-Allow-Origin» в jsOAuth - PullRequest
1 голос
/ 02 января 2012

Я пытаюсь использовать Twitter API с библиотекой jsOAuth .

Полный HTML

<div id="message">Loading..</div>

<script src="jsOAuth-1.3.3.min.js" type="text/javascript"></script>
<script src="http://code.jquery.com/jquery-1.7.min.js" type="text/javascript"></script>
<script type="text/javascript">
        var oauth = OAuth({
            consumerKey: "-MY-KEY-",
            consumerSecret: "MY-SECRET"
        });

Обновлено oauth.get ("http://api.twitter.com/1/statuses/home_timeline.json?callback=?", успех, неудача);

        function success(data){
            $("#message").html("Sucess: " + data.text);
            var timeline = jQuery.parseJSON(data.text);
            console.log(timeline);
            $.each(timeline, function (element){
                console.log(element.text);
            });
        }
        function failure(data) {
            console.log("Throw rotten fruit, something failed");
            $("#message").html("Error" );
        }   
</script>

Результат

Result

Полное изображение

Вопросы

  • Что я делаю не так?
  • Как я могу использовать Twitter API на моем ПК.

Если вы можете прислать мне, я буду признателен за любые примеры.

Спасибо всем.

1 Ответ

4 голосов
/ 02 января 2012

Что я делаю не так?

Вы пытаетесь сделать AJAX-запрос в Twitter.Вы нарушаете правила междоменного доступа - вы не можете получить доступ к данным в домене Twitter.

Как я могу использовать API Twitter на моем ПК?

Выберите один:

  • Использование JSONP
  • Использование прокси-сервера на стороне
  • Хранить код по пути file://, который удаляетмеждоменные ограничения
  • Измените настройки безопасности вашего браузера, чтобы разрешить такой доступ.

Я ввел маловероятные из них курсивом.

Кроме того, как опытный разработчик Twitter, я хочу сделать одно важное замечание о вашем коде: вы используете Javascript для доступа к API.Хотя использование JS для этого не запрещено, использование OAuth в javascript очень небезопасно, и ваше приложение будет заблокировано из API Twitter, если вы использовали этот код на веб-сайте.

...