private InternetRequestSettings CreateSettings() { string url = string.Format("{0}&pageIndex={1}&blockSize={2}", _config.Url, _config.PageIndex, _config.BlockSize); InternetRequestSettings settings = new InternetRequestSettings { RequestedUri = new Uri(url), UserAgent = "NativeHost" }; settings.Headers["WAS-APPID"] = _config.AppId; settings.Headers["WAS-STOREID"] = _config.StoreId; settings.Headers["WAS-DEVICETYPE"] = _config.DeviceType; settings.Headers["WAS-ISBACKGROUND"] = _config.IsBackgroundTask.ToString(); return(settings); }
private async Task <TouchDevelopSchema> GetRemoteProject() { InternetRequestSettings settings = new InternetRequestSettings() { RequestedUri = new Uri(string.Format("https://www.touchdevelop.com/api/{0}", _config.ScriptId)) }; var result = await InternetRequest.DownloadAsync(settings); if (result.Success) { return(_parser.Parse(result.Result).FirstOrDefault()); } return(null); }
public override async Task <IEnumerable <FlickrSchema> > LoadDataAsync() { InternetRequestSettings settings = new InternetRequestSettings() { RequestedUri = new Uri(string.Format("http://api.flickr.com/services/feeds/photos_public.gne?{0}={1}", _config.QueryType, WebUtility.UrlEncode(_config.Query))) }; var result = await InternetRequest.DownloadAsync(settings); if (result.Success) { return(_parser.Parse(result.Result)); } throw new RequestFailedException(); }
public override async Task <IEnumerable <BingSchema> > LoadDataAsync() { InternetRequestSettings settings = new InternetRequestSettings() { RequestedUri = new Uri(string.Format("http://www.bing.com/search?q={0}&loc:{1}&format=rss", WebUtility.UrlEncode(_config.Query), _config.QueryType)) }; var result = await InternetRequest.DownloadAsync(settings); if (result.Success) { return(_parser.Parse(result.Result)); } throw new RequestFailedException(); }
public override async Task <IEnumerable <RssSchema> > LoadDataAsync() { InternetRequestSettings settings = new InternetRequestSettings() { RequestedUri = new Uri(_config.Url) }; var result = await InternetRequest.DownloadAsync(settings); if (result.Success) { return(_parser.Parse(result.Result)); } throw new RequestFailedException(); }
public override async Task <IEnumerable <InstagramSchema> > LoadDataAsync() { InternetRequestSettings settings = new InternetRequestSettings() { RequestedUri = this.GetApiUrl() }; var requestResult = await InternetRequest.DownloadAsync(settings); if (requestResult.Success) { return(_parser.Parse(requestResult.Result)); } if (requestResult.StatusCode == HttpStatusCode.BadRequest) { throw new OAuthKeysRevokedException(); } throw new RequestFailedException(); }
private async Task <IEnumerable <YouTubeSchema> > SearchAsync() { InternetRequestSettings settings = new InternetRequestSettings { RequestedUri = GetSearchUrl() }; var requestResult = await InternetRequest.DownloadAsync(settings); if (requestResult.Success) { return(_parser.Parse(requestResult.Result)); } if (requestResult.StatusCode == HttpStatusCode.Forbidden) { throw new OAuthKeysRevokedException(); } throw new RequestFailedException(); }
private async Task <string> GetUploadVideosListId() { InternetRequestSettings settings = new InternetRequestSettings { RequestedUri = GetChannelUrl() }; var requestResult = await InternetRequest.DownloadAsync(settings); if (requestResult.Success) { var channel = JsonConvert.DeserializeObject <YouTubeResult <YouTubeChannelLookupResult> >(requestResult.Result); if (channel != null && channel.items != null && channel.items.Count > 0 && channel.items[0].contentDetails != null && channel.items[0].contentDetails.relatedPlaylists != null && !string.IsNullOrEmpty(channel.items[0].contentDetails.relatedPlaylists.uploads)) { return(channel.items[0].contentDetails.relatedPlaylists.uploads); } } return(string.Empty); }