2011-07-08 74 views
0

我正在開發一個facebook應用程序,該應用程序在保證離線權限的用戶牆上發佈。我使用PHP和Facebook的API(此代碼是在「的index.php」):在沒有瀏覽器的情況下使用離線權限在Facebook牆上發帖

$user = $_GET['user']; 
(if(isset($_GET['publish'])) { 
    $attachment = array(
        'message' => "My message", 
        'link' => "http://...", 
        'picture' => 'my_url_picture', 
        'name' => "link_name", 
        'caption' => 'my_caption', 
        'description'=> 'my_description' 
        ); 
    $publishStream = $facebook->api("/$user/feed", 'post', $attachment); 
} 

現在,我用一個Java servlet,當事件發生時,有張貼在牆上用戶在這樣:

if(event) { 
    Runtime rt = Runtime.getRuntime(); 
    String url_post = "http://apps.facebook.com/myapp/index.php?publish=1&user=user_id"; 
    rt.exec("rundll32 url.dll,FileProtocolHandler " + url_post); 
} 

一切都好。當事件發生時,我的服務器在上一個鏈接中打開瀏覽器,並且該帖子正確顯示在用戶(使用user_id)牆上。 是否可以在不打開瀏覽器頁面的情況下「訪問」鏈接?我正在使用resin 4.0來測試我的應用程序,Windows 7 Pro Service Pack 1(但在Windows XP中也進行了測試)。 感謝您的關注。

回答

0

如果我瞭解你的權利,你不知道如何發佈,而無需打開系統瀏覽器。也許你應該尋找像Snoopy這樣的編程瀏覽器(http://sourceforge.net/projects/snoopy/)。您可以在不打開任何內容的情況下製作http請求

+0

是的,你已經理解了我,但我在這裏讀到Snoopy是一個PHP類。問題不是PHP,因爲如果我訪問我的index.php頁面,代碼工作正常。問題是java方面,因爲我必須用我的servlet訪問我的頁面。如果我使用史努比,我只能模擬一個瀏覽器,但爲此我必須訪問index.php,因此我們處於起點。 – Baduel

0

你應該看看apache httpclient項目。

+0

來自官方網站:The Commons HttpClient項目現已結束,並且不再被開發。 – Baduel

相關問題