Search code examples
asp.netjavascriptweb-config

Reading web.config from JavaScript


IS there any way that I can read config values in web.config with javascript ? Why would I want to do that ?

I have a timer in my website which would pop up a modal dialog with a count down timer (count down for 2 minutes) if the user is inactive for 20 minutes. If the user does not respond, it logs him out. If he does, it pings to the server (to maintain the session) and keeps the session alive

This 15 minutes is hardcoded in the js file. I would rather want to pick it up from a config file/some other file than having it hard coded into the JS

here is the code snippet

$.fn.idleTimeout = function(options) {
        var defaults = {
                    //I would like to pick these values from some config file
            inactivity: 900000, //15 minutes 
            noconfirm: 120000, //2 minutes
            sessionAlive: 900000, //15 minutes
            click_reset: true,
            logout_url: '/Views/Pages/Timeout.aspx' 
        }

Any suggestions?

Edit: This is in a separate js file. Doing <%=%> would give error "illegal XML character [Break on this error] inactivity: <%=ConfigurationManager.AppSettings["Inactivity"] %>;"


Solution

  • You can generate your JavaScript from ASP.NET.

    Then simply write the settings at the server-side to your var defaults like this:

    var defaults = {
        inactivity: <%=ConfigurationManager.AppSettings["Inactivity"] %>
    }
    

    EDIT:

    If you want to keep your JavaScript in static js files, you can still initialize your var defaults from a small <script> rendered by your ASP.NET application. Your settings would be global, just like the AppSettings in web.config.