Pergunta

eu estou tentando OAuth Twitter e, em seguida, retorna para o nosso localhost: porta (por exemplo http:. // localhost: 6969 ).

Eu também estou tentando usar Linq2Twitter. Quando tento configurar o meu aplicativo no Twitter, ele não está permitindo-me para definir o

  1. Aplicação Web.
  2. site.
  3. Callback URL.

http: // localhost: 6969

Então, como posso fazer Twitter OAuth contra a minha máquina de desenvolvimento localhost?

EDIT: Eu estou secretamente esperando AArnott vai encontrar / ler este post:)

EDIT 2:

Agora que Andrew postou seus pensamentos, eu estou adicionando mais algumas informações para obter mais alguns esclarecimentos sobre esta resposta.

Então, se este é o código da amostra (não meu btw, mas alguns arma hire'd, aqui no trabalho) para redirecionar para o SP (que é Twitter, neste caso ...)

public void StartOAuthAuthorize()
{
    string link = twitterContext.GetAuthorizationPageLink(false, false);
    var uri = new Uri(link);
    NameValueCollection urlParams = HttpUtility.ParseQueryString(uri.Query);
    OAuthToken = urlParams["oauth_token"];

    HttpContext.Current.Session["twitterService"] = this;
    HttpContext.Current.Response.Redirect(link);
}

Este seria o lugar que eu hijack o URL de retorno ....?

Foi útil?

Solução

A resposta pode surpreendê-lo ...

Dê Twitter qualquer retorno de chamada URI permite (provavelmente o URL que você imaginar usando na produção) para a sua página de registo cliente OAuth.

Quando você enviar seu OAuth não autorizada solicitação de token, você tem a opção de fornecer uma URL de retorno de chamada na época, que o Twitter vai preferir usar em seu lugar. Você pode fornecer localhost naquele momento e ele funciona perfeitamente.

Uma vez que você estiver usando LinqToTwitter, que usa internamente DotNetOpenAuth, não há necessidade de especificar 'localhost' quando você está emitindo o seu pedido de autorização para o SP. DotNetOpenAuth vê automaticamente que você está em localhost e envia essa callback URI.

Atualizar : E não se esqueça que você está executando a última versão do LinqToTwitter (pelo menos changeset 56159 ... mais recente que v1.11 release). Caso contrário, você está usando OAuth 1.0 e Twitter ignora a URL de retorno de chamada enviada no pedido de autorização para OAuth 1.0 clientes.

Outras dicas

Mesmo que eu estava ficando 401 erro .. mas seu resolvidos .. durante a registrar sua candidatura a twitter você precisa dar retorno url ... como http: // localhost:. 8080

i ter feito isso usando java ... assim meu código é: String CallbackURL = "http: // localhost: 8080 / tweetproj / index.jsp"; provider.retrieveRequestToken (consumidor, CallbackURL);

onde tweetproj é o meu nome do projeto e index.jsp é apenas uma página jsp ...

Hope esta may ajuda u ...

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top