2013-06-15 3 views
0

Action Script 3.0 OAuth를 사용하여 Twitter와 통합하는 데 문제가 있습니다. Flash에서 개발하는 사람들을 위해OAuth-AS3 라이브러리 "정의되지 않은 속성 oauth 액세스."

/액션이 두 라이브러리를 알 수 있습니다 : 나는 플래시를 테스트 어느 때이 문제가있어

High level AS3/Flex library for OAuth

oauth-as3

을, 여기에 내가 '오류입니다 점점 :

/Users/Testing.as, Line 20 1180: Call to a possibly undefined method OAUth. 
/Users/Testing.as, Line 20 1188: Illegal assignment to class IOAuth. 
/Users/Testing.as, Line 22 1120: Access of undefined property oauth. 
/Users/Testing.as, Line 34 1180: Call to a possibly undefined method OAUth. 

방금 ​​첫 번째 링크 페이지와 과거 코드를 복사했습니다. 모든 것이 잘 보이지만 문제가 무엇인지 알지 못합니다. 아직 초보자입니다. 모든 라이브러리를 올바르게 가져 왔습니다.

패키지 {

import flash.display.MovieClip; 
import flash.events.MouseEvent; 
import flash.net.URLRequest; 
import flash.net.URLLoader; 
import flash.events.Event; 
import org.flaircode.oauth.*; 
import org.iotashan.oauth.*; 


public class Testing extends MovieClip { 

    private var consumerKey:String = "KEYKEYHERE"; // hidden for privacy purposes 
    private var consumerSecret:String = "KYEKEYKEYHERE"; // hidden for privacy purposes 

    public function Testing() { 
     // constructor code 
     ini(); 
    } 

    public function ini():void{ 
     btn.addEventListener(MouseEvent.CLICK, whenClicked); 
    } 


    function whenClicked():void{ 
     // create OAuth 
     oauth:IOAuth = new OAUth(consumerKey, consumerSecret); 
     // get request token 
     var loader:URLLoader = oauth.getRequestToken("http://twitter.com/oauth/request_token"); 
     loader.addEventListener(Event.COMPLETE, requestTokenHandler); 

    } 

    function requestTokenHandler(e:Event):void 
    { 
     requestToken = OAuthUtil.getTokenFromResponse(e.currentTarget.data as String); 
     var request:URLRequest = oauth.getAuthorizeRequest("http://twitter.com/oauth/authorize", requestToken.key); 
     // opens website where user has to login on Twitter and gets 6 digit pin code 
     navigateToURL(request, "_blank"); 
    } 

    function getAccessToken(pin:int):void 
    { 
     var loader:URLLoader = oauth.getAccessToken("http://twitter.com/oauth/access_token", requestToken, {oauth_verifier:pin}); 
     loader.addEventListener(Event.COMPLETE, accessTokenHandler); 
    } 

    function accessTokenHandler(e:Event):void 
    { 
     accessToken = OAuthUtil.getTokenFromResponse(e.currentTarget.data as String); 
     // TODO store accessToken.key and accessToken.secret in EncryptedLocalStorage for all further requests 
    } 

} 

}

답변

0

다음 줄을 변경해보십시오 :

oauth:IOAuth = new OAUth(consumerKey, consumerSecret); 

에 :

var oauth:OAuth = new OAUth(consumerKey, consumerSecret); 

내가 바르와 같은 문제 참조 : ' requestToken '및'accessTok en '. 변수 앞에 'var'을 넣어 선언해야합니다. 즉, "var myVar : VarType". 또한, 생성 된 함수 내에서 이러한 변수를 선언하면이 함수 내부에서만 볼 수 있습니다. 클래스 전체에서 클래스를 볼 수있게하려면 클래스의 변수로 선언하십시오. 예를 들어, "private var requestToken : String;"

+0

나는 그것을 내일 시도 할 것이다. 늦어서 미안해. – Sobiaholic