播放框架重定向不起作用

时间:2013-11-30 14:20:38

标签: java javascript ajax playframework-2.0

我正在开发一个从Twitter收集信息的应用程序。我希望用户能够指出我应该使用他们的个人资料的哪些部分(例如他们可能不希望他们的推文被使用)所以我将使用复选框来允许用户指出配置文件的哪些部分应该使用。单击登录按钮后,我打算确定使用Javascript检查哪些框,然后对开始Twitter登录流程的Java函数进行AJAX调用。在我这样做之前,我只是想确保我能使功能发挥作用。该函数的最后一行是重定向到Twitter,他们可以登录。但是,重定向命令根本不执行任何操作。函数中的每个其他行都按预期执行。我甚至在函数中创建了一个示例文件,以确保函数被调用,并且AJAX函数中的参数已成功传递。任何建议将不胜感激。我的代码如下:

Javascript
<input id="tw" type="button" onclick="twitterLogin()"value="Login to Twitter"/>
function twitterLogin(){
            $.ajax({
                type: "POST",
                url: "@{Application.requestToken()}",
                data: {
                text: "Well that's odd"
                }
            })
        }


Java
public static void requestToken(String text){
    try{
        String prelimOAuthToken = Twitter.getRequestToken();

        if(prelimOAuthToken.equals("Failed")){
            FileWriter fstream = new FileWriter("Error log.txt");
            BufferedWriter out = new BufferedWriter(fstream);
            out.write("Getting a request token failed");
            out.close();
        }
        else{
            BufferedWriter b = new BufferedWriter(new FileWriter("Output.txt"));
            b.write(text);
            b.close();
            //Now we use this oauth token to redirect the user for authentication
            String url = "https://api.twitter.com/oauth/authenticate?oauth_token=" + prelimOAuthToken;
            redirect(url);
        }
    }
    catch(Exception e){
        System.out.println(e.getMessage());
    }
}

1 个答案:

答案 0 :(得分:0)

requestToken必须属于Result类型,而您的if子句也需要返回Result