2016-11-08 2 views
0

Я установил Flurl для запуска в моем PC Xamarin, и я звоню в веб-Api. У меня работает приложение MVC.Flurl Локальное подключение хоста Отказано

Кажется, что Flurl может поразить мой развернутый API без проблем, но по какой-то причине я не могу проверить изменения локально.

Вот что я делаю:

var data = await "http://localhost:60257/api/gigapi".GetJsonAsync<List<Gig>>(); 

Я попробовал простой GetAsync() тоже, но опять же, не дало никаких результатов.

Любая помощь будет оценена по достоинству.

EDIT:

Просто для немного больше информации, проект является перепланировкой из мобильного приложения ионического. Я запускаю ионное приложение локально, и это может поразить мой локальный веб-api без проблем, так что это не проблема с файерволом или что-то в этом роде. Вероятно, я ошибаюсь в Flurl.

EDIT2:

Вот исключение:

e.Message "Просьба http://localhost:60257/api/gigapi не удалось Ошибка: ConnectFailure (Соединение отклонено)" строка

И StackTrace:

StackTrace " в Flurl.Http.Configuration.FlurlMessageHandler + d__1.MoveNext() [0x003ec] в C: \ projects \ flurl \ src \ Flurl.Http.Shared \ Configuration \ FlurlMessageHandler.cs: 62 \ n --- Конец трассировки стека из предыдущее место, где excep было брошено --- \ n в Microsoft.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (задача System.Threading.Tasks.Task) [0x00042] в < 1c7d529d87ec4bdcbde02e9494f3b5ae>: 0 \ n в Microsoft.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccess (System.Threading.Tasks.Task задача) [0x0001c] в < 1c7d529d87ec4bdcbde02e9494f3b5ae>: 0 \ п на Microsoft.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task задача) [0x00009] в < 1c7d529d87ec4bdcbde02e9494f3b5ae>: 0 \ n в Microsoft.Runtime.CompilerServices.ConfiguredTaskAwaitable 1+ConfiguredTaskAwaiter[TResult].GetResult() [0x00000] in <1c7d529d87ec4bdcbde02e9494f3b5ae>:0 \n at Flurl.Http.HttpResponseMessageExtensions+<ReceiveJson>d__0 1 [T] .MoveNext() [0x00024] в C: \ projects \ flurl \ src \ Flurl.Http.Shared \ HttpResponseMessageExtensions.cs: 26 \ n --- Конец стека трассировка из предыдущего места, где было выбрано исключение - \ n в System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() [0x0000c] in/Users/builder/data/lanes/3819/96c7ba6c/source/mono/mcs/class/referencesource/mscorlib/system/runtime/exceptionservices/exceptionservicescommon.cs: 143 \ n в System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (задача System.Threading.Tasks.Task) [0x00047] in/Users/builder/data/lanes/3819/96c7ba6c/source/mono/mcs/class/referencesource/mscorlib/system/runtime/compilerservices/TaskAwaiter.cs: 187 \ n в System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (задача System.Threading.Tasks.Task) [0x0002e] в/Пользователи/builder/data/lanes/3819/96c7ba6c/source/mono/mcs/class/referencesource/mscorlib/system/runtime/compilerservices/TaskAwaiter.cs: 156 \ n в System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System. Threading.Tasks.Task task) [0x0000b] в /Users/builder/data/lanes/3819/96c7ba6c/source/mono/mcs/class/referencesource/mscorlib/system/runtime/compilerservices/TaskAwaiter.cs:128 \ n на System.Runtime.CompilerServices.TaskAwaiter`1 [TResult] .GetResult() [0x00000] in/Users/builder/data/lanes/3819/96c7ba6c/source/mono/mcs/class/referenc esource/mscorlib/system/runtime/compilerservices/TaskAwaiter.cs: 357 \ n в SarifForms.Login + d__1.MoveNext() [0x00033] в C: \ Users \ Minneth \ Documents \ Projects \ SarifForms \ SarifForms \ Login.xaml.CS: 31 "строка

FINAL UPDATE:

Ответ размещен ниже

+0

Можете ли вы предоставить подробную информацию о том, что происходит, когда вы запускаете это локально? Вызывается ли исключение? Если да, укажите данные об исключениях и трассировку стека. –

+0

Добавлено в качестве редактирования. Благодаря! –

ответ

0

Бит очевидно reallly, но я думаю, что я разработал вопрос

Я тестирую мое приложение Xamarin.. это использование Flurl из Android-эмулятора, поэтому localhost на самом деле является эмулятором Android. Не мой локальный веб-api работает на той же машине.

Я считаю, что вместо этого я должен использовать IP loopback 10.0.2.2.

Причина, по которой он работает с моим ионическим приложением, заключается в том, что я запускаю приложение Ionic в браузере, а не эмулятор Andorid.

Надеюсь, это поможет кому-то.

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