2013-02-14 44 views
0

我想表明我的網站在appjs窗口中的內容,但我不知道怎麼辦。如何連接到appjs服務器的NodeJS並顯示其內容

在appjs腳本有 app.serveFilesFrom(__dirname + '/content'); 說,其中的內容是,它有顯示,但我不希望它的地方,我想讓它顯示我的網站的內容,用Node.js的運行serverscript。

我試過這個 https://github.com/appjs/appjs/wiki/Using-express-to-handle-local-http-requests 和express.js文檔中的一些方法,但未成功。

因此,我在這裏問,有人有一個想法,如何做到這一點?

+0

您是否問過如何使用您的'節點從您的網站下載遠程內容。js'應用程序並提供內容與它? – fardjad 2013-02-14 17:28:52

+0

不,不下載。就好像瀏覽器會是app.js.它只顯示來自我的節點服務器的內容。 – RedDot 2013-02-14 19:45:05

回答

1

我希望我理解正確你的問題,你實際上可以使代理請求和管道這是針對你的應用程序的響應。

var http = require("http"); 
var express = require("express"); 
var app = express(); 

var options = { 
    host: "stackoverflow.com", 
    port: 80, 
    path: "/", 
    method: "GET", 
    headers: {} 
}; 

app.get("/stackoverflow*", function (request, response) { 
    "use strict"; 

    var proxyRequest; 

    options.headers.cookie = request.headers.cookie; 
    options.headers["user-agent"] = request.headers["user-agent"]; 

    // TODO set other headers if needed 

    options.path = "/" + request.path.split("/").slice(2).join("/"); 
    options.method = request.method; 

    proxyRequest = http.request(options, function (proxyResponse) { 
     proxyResponse.pipe(response); 
    }); 

    request.pipe(proxyRequest); 
}).listen(8080); 

現在你可以瀏覽到http://localhost:8080/stackoverflow/questions/14880557/how-to-connect-appjs-to-nodejs-server-and-show-its-content/14890268#14890268和您的應用程序將顯示來自stackoverflow.com請求的路徑。

2

有你喜歡的web瀏覽器,它是AppJS的主要意圖之一AppJS窗口內顯示的網站,就可以利用這些兩(2)步驟中的任何一個;

  1. 創建IFRAME(即填充的寬度和高度)在位於的index.html 文件「數據/內容/」。

    將IFRAME SRC到您的網站的網址。

    例如< iframe src =「http://www.YourWebsite.com」>

    這會在App.exe啓動時在AppJS窗口中顯示您的網站。

    注意:您可能希望使用CSS使iframe填充100%的窗口寬度和100%的高度。

  2. 變化的代碼在 「數據/ node_modules/appjs/LIB/settings.js」

    FROM

    URL行: 'HT TP:// appjs',

    TO

    網址: 'http://www.YourWebsite.com'

多數時候我選擇FO時間第一個選項,因爲它可以讓我用CSS做很多事情。這包括在IFRAME的背景放置一個動畫GIF以指示啓動時的頁面加載。

我去的第二個選項只有當我想讓我的實際網站的網址有點麻煩的企圖的黑客中找到。雖然仍然保留「數據/內容」目錄及其內容未刪除。

我希望這個答案。

+0

豎起大拇指爲簡單和乾淨的iframe解決方案 – Timo 2015-07-06 22:18:00