Disable browser ‘Save Password’ functionality

I’m not sure if it’ll work in all browsers but you should try setting autocomplete=”off” on the form. <form id=”loginForm” action=”login.cgi” method=”post” autocomplete=”off”> The easiest and simplest way to disable Form and Password storage prompts and prevent form data from being cached in session history is to use the autocomplete form element attribute with value … Read more

Detect if device is iOS

Detecting iOS With iOS 13 iPad both User agent and platform strings are changed and differentiating between iPad and MacOS seems possible, so all answers below needs to take that into account now. This might be the shortest alternative that also covers iOS 13: function iOS() { return [ ‘iPad Simulator’, ‘iPhone Simulator’, ‘iPod Simulator’, … Read more

Do I need Content-Type: application/octet-stream for file download?

No. The content-type should be whatever it is known to be, if you know it. application/octet-stream is defined as “arbitrary binary data” in RFC 2046, and there’s a definite overlap here of it being appropriate for entities whose sole intended purpose is to be saved to disk, and from that point on be outside of … Read more

Embedding Base64 Images

Update: 2017-01-10 Data URIs are now supported by all major browsers. IE supports embedding images since version 8 as well. http://caniuse.com/#feat=datauri Data URIs are now supported by the following web browsers: Gecko-based, such as Firefox, SeaMonkey, XeroBank, Camino, Fennec and K-Meleon Konqueror, via KDE’s KIO slaves input/output system Opera (including devices such as the Nintendo … Read more

How to force browsers to reload cached CSS and JS files?

This solution is written in PHP, but it should be easily adapted to other languages. The original .htaccess regex can cause problems with files like json-1.3.js. The solution is to only rewrite if there are exactly 10 digits at the end. (Because 10 digits covers all timestamps from 9/9/2001 to 11/20/2286.) First, we use the … Read more

How to encode the filename parameter of Content-Disposition header in HTTP?

I know this is an old post but it is still very relevant. I have found that modern browsers support rfc5987, which allows utf-8 encoding, percentage encoded (url-encoded). Then Naïve file.txt becomes: Content-Disposition: attachment; filename*=UTF-8”Na%C3%AFve%20file.txt Safari (5) does not support this. Instead you should use the Safari standard of writing the file name directly in … Read more

Are the PUT, DELETE, HEAD, etc methods available in most web browsers?

No. The HTML 5 spec mentions: The method and formmethod content attributes are enumerated attributes with the following keywords and states: The keyword get, mapping to the state GET, indicating the HTTP GET method. The GET method should only request and retrieve data and should have no other effect. The keyword post, mapping to the … Read more

What is the maximum possible length of a query string?

RFC 2616 (Hypertext Transfer Protocol — HTTP/1.1) states there is no limit to the length of a query string (section 3.2.1). RFC 3986 (Uniform Resource Identifier — URI) also states there is no limit, but indicates the hostname is limited to 255 characters because of DNS limitations (section 2.3.3). While the specifications do not specify … Read more