2014-10-23 3 views
0

У меня есть приложение Xamarin.Forms PCL, которое обеспечивает доступ к веб-сервисам через HttpClient. Приложение работает на Android, но на iOS он вообще не подключается к веб-сервисам. Мне нужно создать прокси для iOS и REST?Xamarin.Forms HttpClient to RESTful webservice

Я прочитал здесь информацию http://developer.xamarin.com/guides/cross-platform/application_fundamentals/web_services/, но, честно говоря, это меня просто смутило. Я попытался создать прокси-сервер, как указано, но это не сработало. Я буду упорствовать, если это необходимо.

Я также пробовал метод HttpWebRequest, но с этим не был успешным.

ответ

1

Вам нужно только создать прокси для WCF или SOAP. Отдых должен работать нормально. Так я реализовал GET для службы REST с использованием HttpClient в PCL.

using (var client = new HttpClient()) 
{ 
    var result = await client.GetStringAsync(url); 
    return JsonConvert.DeserializeObject<Movie>(result); 
} 

Конечно, другие глаголы занимают немного больше работы.

Возможно, вам нужна переадресация привязки в app.config? Проверьте это сообщение в блоге о добавлении перенаправления: http://motzcod.es/post/78863496592/portable-class-libraries-httpclient-so-happy.

Вот пример:

<?xml version="1.0" encoding="utf-8"?> 
<configuration> 
    <runtime> 
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
     <dependentAssembly> 
     <assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" /> 
     <bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="2.0.5.0" /> 
     </dependentAssembly> 
    </assemblyBinding> 
    </runtime> 
</configuration> 
Смежные вопросы