0

appjs ウィンドウに自分の Web サイトのコンテンツを表示したいのですが、方法がわかりません。

appjs スクリプトでは app.serveFilesFrom(__dirname + '/content'); 、コンテンツがどこにあるのか、表示する必要がありますが、ローカルではなく、node.js サーバースクリプトによって実行されている Web サイトのコンテンツを表示したいと考えています。

このhttps://github.com/appjs/appjs/wiki/Using-express-to-handle-local-http-requestsと、express.js ドキュメントのいくつかのメソッドを試しまし たが、失敗しました。

したがって、私はここで質問します。

4

2 に答える 2

2

AppJSの主な目的の1つであるWebブラウザのようにAppJSウィンドウ内にWebサイトを表示するには、次の2つの手順のいずれかを実行できます。

  1. 「data/content /」にあるindex.htmlファイルにIFRAME(幅と高さを埋める)を作成します。

    IFRAMESRCをWebサイトのURLに設定します。

    例:<iframe src = "http://www.YourWebsite.com">

    これにより、app.exeの起動時にAppJSウィンドウにWebサイトが表示されます。

    注:CSSを使用して、iframeをウィンドウの幅100%と高さ100%で埋めることができます。

  2. 「data/node_modules / appjs / lib/settings.js」のコード行を変更します

    から

    url:'ht tp:// appjs'、

    url:' http ://www.YourWebsite.com '

ほとんどの場合、CSSを使用して多くのことを実行できるため、最初のオプションを選択します。また、これには、起動時にページが読み込まれることを示すために、アニメーションGIFをIFRAMEの背景に配置することも含まれます。

2番目のオプションは、ハッキングの試行中に実際のWebサイトのURLを見つけるのが少し難しい場合にのみ使用します。「data/content」ディレクトリとそのコンテンツを削除せずに残します。

私はこれが答えることを願っています。

于 2013-03-14T11:16:37.107 に答える
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

于 2013-02-15T07:50:06.723 に答える