Я знаю, что у этой проблемы должно быть очевидное решение, и мне его не хватает, поэтому я был бы очень признателен, если бы кто-нибудь просветил меня, чтобы я не крутил колеса ...
Я пишу приложение ASP.Net, которое будет взаимодействовать с сервисным API (в частности, Evernote). Evernote требует OAuth для безопасности, и прежде чем я смогу реально взаимодействовать с объектами, мне нужно получить токен.
Рабочий процесс выглядит следующим образом (объясняя это себе так же, как и всем остальным!):
Проблема в том, что я пишу это приложение на локальном компьютере, а не на интернет-провайдере в общедоступном домене. Итак, мой обратный вызов - на локальный сервер. Конечно, localhost является относительным, поэтому Evernote не может разрешить мой обратный вызов ... Я никогда не могу получить токен аутентификации и отладить одновременно.
Должен быть способ обойти эту проблему, потому что эта модель аутентификации не уникальна для Evernote (судя по всему ... Flickr использует ее, как и многие другие службы). Так может ли кто-нибудь сказать мне, как настроить все, чтобы я мог получить токен аутентификации и по-прежнему иметь возможность отлаживать свой локальный ящик?
Помощь очень ценится!





OAuth довольно сложно реализовать. Возможно, это не тот ответ, который вы ищете, но вот как мне удалось выполнить эту работу:
В целях тестирования я зарегистрировал временный общедоступный поддомен (например, test.oauth.mydomain.com), чтобы Evernote мог перенаправить на этот URL.
... Но если это единственный способ сделать это, мне придется это сделать. Кажется, это ужасно большой барьер для людей, которые хотят разрабатывать приложения, которые нужно преодолеть. Неудивительно, что вы не так много слышите о разработке .Net против открытых API.
В соответствии с этим (Как мне разрабатывать против OAuth локально?) обратный вызов выполняется браузером, поэтому он должен иметь возможность поразить localhost.
Спасибо, что поделились своим процессом, Живко. Это единственный способ, которым я мог это сделать. Я надеялся, что есть менее болезненная альтернатива, которую я просто упустил. На разработку чего-то уйдет в два раза больше времени, если мне придется загружать, компилировать, запускать и проверять журналы ...: S