public override UploadResult ShortenURL(string url) { UploadResult result = new UploadResult { URL = url }; FirebaseRequest requestOptions = new FirebaseRequest { dynamicLinkInfo = new DynamicLinkInfo { dynamicLinkDomain = URLHelpers.RemovePrefixes(DynamicLinkDomain), link = url } }; if (IsShort) { requestOptions.suffix = new FirebaseSuffix { option = "SHORT" }; } Dictionary <string, string> args = new Dictionary <string, string> { { "key", WebAPIKey }, { "fields", "shortLink" } }; string serializedRequestOptions = JsonConvert.SerializeObject(requestOptions); result.Response = SendRequest(HttpMethod.POST, "https://firebasedynamiclinks.googleapis.com/v1/shortLinks", serializedRequestOptions, RequestHelpers.ContentTypeJSON, args); FirebaseResponse firebaseResponse = JsonConvert.DeserializeObject <FirebaseResponse>(result.Response); if (firebaseResponse != null) { result.ShortenedURL = firebaseResponse.shortLink; } return(result); }
public override UploadResult ShortenURL(string url) { UploadResult result = new UploadResult { URL = url }; string RequestUrl = "https://firebasedynamiclinks.googleapis.com/v1/shortLinks"; string longDynamicLink = URLHelpers.ForcePrefix(DynamicLinkDomain + ".app.goo.gl/?link=" + HttpUtility.UrlEncode(url)); string option; Dictionary <string, string> args = new Dictionary <string, string> { { "key", WebAPIKey } }; if (IsShort) { option = "SHORT"; } else { option = "UNGUESSABLE"; } FirebaseRequest request = new FirebaseRequest { longDynamicLink = longDynamicLink, suffix = new FirebaseRequestSuffix { option = option } }; string json = JsonConvert.SerializeObject(request); result.Response = SendRequest(HttpMethod.POST, RequestUrl, json, ContentTypeJSON, args); result.ShortenedURL = JsonConvert.DeserializeObject <FirebaseResponse>(result.Response).shortLink; return(result); }
public override UploadResult ShortenURL(string url) { UploadResult result = new UploadResult { URL = url }; FirebaseRequest request = new FirebaseRequest { dynamicLinkInfo = new DynamicLinkInfo { dynamicLinkDomain = DynamicLinkDomain, link = url } }; string requesturl = "https://firebasedynamiclinks.googleapis.com/v1/shortLinks"; Dictionary <string, string> args = new Dictionary <string, string> { { "key", WebAPIKey } }; if (IsShort) { request.suffix = new Suffix { option = "SHORT" }; } string requestjson = JsonConvert.SerializeObject(request); result.Response = SendRequest(HttpMethod.POST, requesturl, requestjson, ContentTypeJSON, args); result.ShortenedURL = JsonConvert.DeserializeObject <FirebaseResponse>(result.Response).shortLink; return(result); }