Обновление статуса в Twitter:установить исходный код (C #)

StackOverflow https://stackoverflow.com/questions/1216071

  •  06-07-2019
  •  | 
  •  

Вопрос

Я обновляю статус моего пользователя в Twitter, используя простой код ниже.Моя проблема в том, что обновления Twitter, возникающие в результате использования этого кода, обозначаются как "....назад из API".Я хотел бы иметь возможность управлять частью "API", чтобы произносить пользовательское имя.Как я могу это сделать?Предпочтительно использовать изменение приведенного ниже кода...

Спасибо

/*
 * A function to post an update to Twitter programmatically
 * Author: Danny Battison
 * Contact: gabehabe@hotmail.com
 */

/// <summary>
/// Post an update to a Twitter acount
/// </summary>
/// <param name="username">The username of the account</param>
/// <param name="password">The password of the account</param>
/// <param name="tweet">The status to post</param>
public static void PostTweet(string username, string password, string tweet)
{
    try
    {
        // encode the username/password
        string user = Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(username + ":" + password));
        // determine what we want to upload as a status
        byte[] bytes = System.Text.Encoding.ASCII.GetBytes("status=" + tweet);
        // connect with the update page
        HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://twitter.com/statuses/update.xml");
        // set the method to POST
        request.Method = "POST";
        request.ServicePoint.Expect100Continue = false; // thanks to argodev for this recent change!
        // set the authorisation levels
        request.Headers.Add("Authorization", "Basic " + user);
        request.ContentType = "application/x-www-form-urlencoded";
        // set the length of the content
        request.ContentLength = bytes.Length;

        // set up the stream
        Stream reqStream = request.GetRequestStream();
        // write to the stream
        reqStream.Write(bytes, 0, bytes.Length);
        // close the stream
        reqStream.Close();
    }
    catch (Exception ex) 
    {
        // Log the error
    }
}
Это было полезно?

Решение

Единственный способ получить доступ "из MyApp" - это использовать OAuth и настроить его через свою учетную запись разработчика Twitter.Раньше вы могли отправлять параметр HTTP POST с вашим запросом (source), но с тех пор он устарел.

Другие советы

Просто небольшое предложение, возможно, вы захотите взглянуть на Твитшарп библиотека, которая могла бы облегчить вашу жизнь вместо того, чтобы возиться с собой на уровне REST API.

В Twitter есть список других библиотек, которые вы могли бы использовать для C# здесь, если вам не нравится внешний вид TweetSharp.

Пожалуйста, зарегистрируйте свое приложение здесь http://twitter.com/apps/new

Как только они одобрят, вы можете передать параметр "источник", чтобы ваши твиты были помечены как из вашего приложения.

Возможно, вы захотите прочитать эту статью: Кодирование твита автор: Джеймс Девлин.

Вы должны зарегистрировать свое приложение, чтобы изменить это имя.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top