Пример #1
0
        public override UploadResult ShortenURL(string url)
        {
            UploadResult result = new UploadResult {
                URL = url
            };

            if (!string.IsNullOrEmpty(url))
            {
                Dictionary <string, string> arguments = new Dictionary <string, string>();
                arguments.Add("access_token", AuthInfo.Token.access_token);
                arguments.Add("longUrl", url);
                if (!string.IsNullOrEmpty(Domain))
                {
                    arguments.Add("domain", Domain);
                }

                result.Response = SendRequest(HttpMethod.GET, URLShorten, arguments);

                BitlyShortenResponse shorten = JsonConvert.DeserializeObject <BitlyShortenResponse>(result.Response);

                if (shorten != null && shorten.data != null && !string.IsNullOrEmpty(shorten.data.url))
                {
                    result.ShortenedURL = shorten.data.url;
                }
            }

            return(result);
        }
Пример #2
0
        public override UploadResult ShortenURL(string url)
        {
            UploadResult result = new UploadResult {
                URL = url
            };

            if (!string.IsNullOrEmpty(url))
            {
                BitlyShortenRequestBody requestBody = new BitlyShortenRequestBody();
                requestBody.long_url = url;
                if (!string.IsNullOrEmpty(Domain))
                {
                    requestBody.domain = Domain;
                }
                string json = JsonConvert.SerializeObject(requestBody);

                NameValueCollection headers = GetAuthHeaders();

                result.Response = SendRequest(HttpMethod.POST, URLShorten, json, RequestHelpers.ContentTypeJSON, null, headers);

                BitlyShortenResponse responseData = JsonConvert.DeserializeObject <BitlyShortenResponse>(result.Response);

                if (responseData != null && !string.IsNullOrEmpty(responseData.link))
                {
                    result.ShortenedURL = responseData.link;
                }
            }

            return(result);
        }