the HTML script tag and non-JS content - Firefox

后端 未结 3 569
青春惊慌失措
青春惊慌失措 2021-01-06 17:09

It appears this code will request the file in Chrome and IE but not in Firefox.



        
相关标签:
3条回答
  • 2021-01-06 17:24

    Are you setting the content type. Guessing .NET here so posting basic idea:

    public class Handler : IHttpHandler {
        public void ProcessRequest (HttpContext context) {
             context.Response.ContentType = "text/javascript";
             context.Response.Write("alert('hello world');");
        }
    }
    
    0 讨论(0)
  • 2021-01-06 17:41

    The canonical way to specify script is

    <script src="something.js" type="text/javascript"></script>
    

    or

    <script src="somethingThatWilReturnJavaScriptMime.someextension" type="text/javascript"></script>
    

    There is no reason the browser should load unknown mime into a script tag and it will be strictly browser specific whether or not it will allow/ignore the type attribute

    It would be a matter of testing to see what the browser will do if you actually send

    content-type:text/javascript

    regardless of type attribute

    0 讨论(0)
  • 2021-01-06 17:44

    Is there a some spec that says browsers should only process JavaScript related mime-types?

    See the type attribute:

    This attribute gives an advisory hint as to the content type of the content available at the link target address. It allows user agents to opt to use a fallback mechanism rather than fetch the content if they are advised that they will get content in a content type they do not support.

    If you want to fetch arbitrary content for use in a script, use XMLHttpRequest.

    0 讨论(0)
提交回复
热议问题