문제

나는 트위터로 Oauth를하려고 노력하고 있으며, 그것은 우리의 로컬 호스트로 돌아갑니다 : 포트 (예 :. http : // localhost : 6969).

나는 또한 linq2twitter를 사용하려고 노력하고 있습니다. 트위터에서 응용 프로그램을 설정하려고 할 때

  1. 응용 프로그램 웹 사이트.
  2. 웹 사이트.
  3. 콜백 URL.

되려고 http : // localhost : 6969

그렇다면 LocalHost 개발 컴퓨터에 대해 Twitter Oauth를 어떻게 만들 수 있습니까?

편집 : 비밀리에 바라고 있습니다 Aarnott 이 게시물을 찾고 읽을 것입니다 :)

편집 2 :

Andrew가 그의 생각을 게시 했으므로이 답변을 더 설명하기 위해 더 많은 정보를 추가하고 있습니다.

따라서 이것이 샘플 코드 (광산 BTW가 아니라 일부 고용 총, 여기 직장에서 총)라면 SP (트위터,이 경우 ...)로 리디렉션합니다.

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);
}

이것은 내가 할 곳이 될 것입니다 납치 콜백 URL ....?

도움이 되었습니까?

해결책

대답은 당신을 놀라게 할 것입니다 ...

OAUTH 클라이언트 등록 페이지에 대해 트위터에 콜백 URI (생산에서 사용하는 URL)를 제공하십시오.

OAUTH 무단 토큰 요청을 보낼 때 그 당시 콜백 URL을 제공 할 수있는 옵션이 있습니다. 그 당시 LocalHost를 공급할 수 있으며 완벽하게 작동합니다.

내부적으로 dotnetopenauth를 사용하는 LinqTotwitter를 사용하고 있기 때문에 SP에 승인 요청을 발행 할 때 'LocalHost'를 지정할 필요가 없습니다. DotNetOpenauth는 자동으로 LocalHost에있는 것을보고 해당 콜백 URI를 보냅니다.

업데이트: 그리고 최신 버전의 LinqTotwitter를 실행하고 있는지 확인하십시오 (적어도 Changeet 56159 ... 릴리스 v1.11보다 최근). 그렇지 않으면 OAUTH 1.0을 사용하고 있으며 Twitter는 OAUTH 1.0 클라이언트의 승인 요청에서 전송 된 콜백 URL을 무시합니다.

다른 팁

나조차도 401 오류를 받고 있었지만 해결되었습니다. 해결되었습니다. 트위터에 응용 프로그램을 등록하는 동안 콜백 URL을 제공해야합니다. http : // localhost : 8080.

Java를 사용 하여이 작업을 수행했습니다. 그래서 내 코드는 다음과 같습니다. String CallbackUrl = "http : // localhost : 8080/tweetproj/index.jsp"; Provider.retrieVerequesttoken (Consumer, CallbackUrl);

TweetProj가 내 프로젝트 이름이고 Index.jsp는 JSP 페이지 중 하나입니다 ...

이것이 도움이되기를 바랍니다 ...

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top