.net
  • javascript
  • web-config
  • 2009-04-01 8 views 2 likes 
    2

    htmlページ内のjavascriptを使用して(asp.net)web.configファイルから設定を読み込む簡単な方法はありますか?JavaScriptを使って.net設定ファイルを読む(aspxページのjavascriptではない)

    私はaspxページ内のjavascriptブロックに設定の設定を渡す例を見つけました。

    <script type="text/javascript"> 
    function ReadConfigSettings(){ 
        var wibble = '<%=ConfigurationManager.ConnectionStrings["MyConnString"].ConnectionString %>' } 
    </script> 
    

    しかし、これは私がやろうとしていることではありません。私は、スタンドアロンのHTMLページ内から設定を読み込む必要があります。

    +2

    Javascriptで接続文字列を読み取ることができた場合、セキュリティ上の重大な問題が発生します。 –

    答えて

    4

    IISの仮想ディレクトリからHTML/Javascriptを実行している場合、asp.netハンドラが ".config"ファイルの配信を妨げるため、Javascriptの.configファイルに直接アクセスする方法はありません。したがって、ファイルをIFrame/Ajaxリクエストにロードする必要はありません。 JavaScriptから呼び出される

    http://myhost/mydirectiory/GetConfigurationValue.aspx?key=MyConnString

    が、その後することができ、「connectionStringGoesHere」のXMLを返します:

    1つのオプションは、そう、.configファイルから該当する値を返すサーバー上の.aspxファイルであり、中古。?

    +0

    素敵な提案。助けてくれてありがとう。 –

    +0

    これはWebサービスasmxファイルとしてはうまくいかないでしょうか? –

    1

    できません。設定ファイルはサーバー側であり、クライアント側からは(意図的にもかなり正しく)アクセスできません。

    0

    古い質問が、それは純粋なHTMLページを使用してアクセスのためのあなたの条件に合わないかもしれませんが、別の提案...

    私は おそらく、何かのメインページのように似た何かをしようとしていますが

    <script type="text/javascript"> 
    function ReadConfigSettings(){ 
    Window.wibble = '<%=ConfigurationManager.ConnectionStrings["MyConnString"].ConnectionString %>'   
    } 
    </script> 
    

    これは、Window.wibbleに、他の場所からアクセス可能なグローバル変数を残します。この上

    バリエーションが...隠された入力divの内側に入れて、他の場所にjQuery/ElementById経由でアクセスして、私は基本的にはちょうどに値を追加するには、サーバー側を使用して、このような

    <input id="connString" type="hidden" value="@Mvc.Utils.GetConnectionString()" /> 
    

    好き 何かを含めますhtmlとし、後でクライアント側で値をロードします。

    は、しかし、あなたは純粋なHTMLを必要とするので、そのあなたが渡している接続文字列は、これはおそらく、セキュリティなどの理由で失敗したが、それは簡単なWeb設定値を読み込むために働きます。

     関連する問題

    • 関連する問題はありません^_^