static async Task <string[]> CompleteWordAsync(string input, string predictorKey, string lang, int limit = 1) { input = WebUtility.HtmlEncode(input); var parser = new JSONParser.JSONParser(); var requestString = $"https://predictor.yandex.net/api/v1/predict.json/complete?key={predictorKey}&q={input}&lang={lang}&limit={limit}"; var request = WebRequest.Create(requestString); request.Credentials = CredentialCache.DefaultCredentials; var respose = await request.GetResponseAsync(); var reader = new StreamReader(respose.GetResponseStream()); var poolString = await reader.ReadToEndAsync(); var responseJson = parser.Parse(poolString); var textArray = ((JSONObjectCollection)responseJson)["text"] as JSONArrayCollection; return(ToStringArray(textArray)); }
public static string[] GetLangs(string predictorKey) { var parser = new JSONParser.JSONParser(); var requestString = $"https://predictor.yandex.net/api/v1/predict.json/getLangs?key={predictorKey}"; var request = WebRequest.Create(requestString); request.Credentials = CredentialCache.DefaultCredentials; var respose = request.GetResponse(); var reader = new StreamReader(respose.GetResponseStream()); var poolString = reader.ReadToEnd(); var responseJson = parser.Parse(poolString); var textArray = ((JSONArrayCollection)responseJson); return(ToStringArray(textArray)); }