Как я могу отправить запрос POST на Discord Webhooks C # - PullRequest
0 голосов
/ 15 мая 2019

Итак, я делаю ресурс FiveM, который получает сообщение и затем отправляет его на канал Discord.Мне нужно, чтобы это был сценарий на стороне сервера.

Я пытался использовать WebClient, Flurl.Http и некоторые асинхронные, жду, но ни один из них не работает

Я пробовал этоWebClient

using (var wb = new WebClient())
             {
                 string content = message;
                 string username = "" + name + "(ID: )" + id;

                 var data = new NameValueCollection();
                 data["username"] = username;
                 data["content"] = content;

                 var response = wb.UploadValues(discordURL, "POST", data);
                 string responseInString = Encoding.UTF8.GetString(response);
                 Debug.WriteLine(responseInString);
             }

Я попытался использовать асинхронное ожидание со словарем

var values = new Dictionary<string, string>
            {
               { "username", name + " ID: " + id },
               { "content", message }
            };

            var content = new FormUrlEncodedContent(values);

            var response = await client.PostAsync(discordURL, content);

            var responseString = await response.Content.ReadAsStringAsync();

И в последний раз я попытался использовать Flurl.Http

var responseString = await discordURL
            .PostUrlEncodedAsync(new { username = name + " ID: " + id, content = message })
            .ReceiveString();

Flurl.Http при использовании возвращает, что зависимость не может быть найдена, а другие просто отстают от всего ресурса чата FiveM и ничего не делают.

Если бы вы могли мне помочь, это было бы лучшеСпасибо.

1 Ответ

0 голосов
/ 02 июня 2019

Если вы хотите отправить сообщение с вашего сервера FiveM на ваш дискорд-хук, попробуйте эту встроенную функцию.

PerformHttpRequest('discord web-hook link', function(Error, Content, Head) end, 'POST', json.encode({username = 'bot user name', content = 'message'}), { ['Content-Type'] = 'application/json' })
...