2016-04-01 16 views
-1

моего приложения UWP имеет доступ к некоторым данным с помощью IIS,не удается получить доступ к HTTP: // LOCALHOST после sideloading

public static async Task<List<Uri>> GetMedia() 
     { 
      List<Uri> target = new List<Uri>(); 
      HtmlDocument document = new HtmlDocument(); 
      var httpClient = new HttpClient(); 
      var urlVideos = "http://localhost/Videos"; 
      var response = await httpClient.GetAsync(urlVideos); 
      var result = await response.Content.ReadAsStringAsync(); 
      string htmlString = result; 

      document.LoadHtml(htmlString); 
      var collection = document.DocumentNode.DescendantsAndSelf() ; 
      foreach (HtmlNode link in collection) 
      { 
       if (link.Attributes.Contains("href") && !string.IsNullOrEmpty(link.Attributes["href"].Value.Trim().Trim('/'))) 
       { 
        target.Add(new Uri("http://localhost" + link.Attributes["href"].Value)); 
       } 
      } 
      return target; 
     } 

тогда я звоню этот метод, как это,

частные IList _videos _videos = ждать Proxy.GetMedia();

он работает хорошо, за исключением после того, как я загружен на приложение, где я только что понял, что _video остается пустым, и я могу просматривать http://localhost/Videos так я предположил, что IIS хорошо настроен,

ответ

1

Если вы хотите получить доступ к Localhost из загружен на приложение, вы должны включить сетевой loopback для этого конкретного приложения. По умолчанию доступ к http://localhost запрещен для каждого приложения. Вы можете запустить эту команду на командной строке:

checknetisolation LoopbackExempt -a -n=YourAppContainerPackageFamilyName 

Заменить YourAppContainerPackageFamilyName с AppContainer Имя вашего приложения. Вы находите его в * .appxmanifest своего приложения. Вы должны запустить это на машине, где вы загрузили приложение. В dev-машинах он включен по умолчанию. Смотрите также по этой ссылке: https://msdn.microsoft.com/en-us/library/windows/apps/Hh780593.aspx

+0

Привет, Дамиель спасибо, но я получаю сообщение об ошибке, когда я бегу эта ошибка команды 1337 -538 – bob

+0

Ok, я немного измененную этот ответ. Если вы берете имя пакета из вашего приложения, параметр -n не -p. Я мог бы воспроизвести вашу проблему. Если вы используете команду выше с -n, она будет работать. –

+0

команда хорошо работает, но ничего не меняет – bob