Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

QR code with URL, does it *REALLY* need the http://?

It seems like most (if not all) QR readers on my iPhone handle URLs without the http:// just fine but I was wondering if that is universal? Android? BlackBerry? Is there an RFC somewhere that I should be reading

I'm building a QR management/url shortener system and was wondering if it was absolutely necessary. If not, I can drop 7 characters from my QR's URLs and make them the lowest level of complexity (16 characters or less). Which, from everything I've read, is a Good Thing™.

like image 332
Dan Berlyoung Avatar asked Nov 15 '10 17:11

Dan Berlyoung


3 Answers

I haven't found any absolute documentation that says it must have it. But... After testing a number of QR reader apps, it's clear that many of them will 'guess' at a url if there is no http:// in it. But many do not and display it as just a string. Since it's a URL, it really does need it. And if any apps won't read it, then I have to bow to them and add it for all of them.

like image 93
Dan Berlyoung Avatar answered Nov 18 '22 17:11

Dan Berlyoung


Hey Dan I am the dev of Barcode Scanner and just saw your question. I have a few more tidbits of info which may help.

There is no real 'standard' for this; I suppose the HTTP specification is the closest thing and technically it does say you need "http://". This wiki has everything we think we know about standards and de facto standards in this area.

I can tell you that QR codes have special modes to encode digits only, and alphanumeric-only text. The alpha mode includes only capital letters, but does include key punctuation like colon and slash. So, HTTP://EXAMPLE.ORG/BAR ought to be encodable in QR codes in fewer bytes than http://example.org/bar.

URLs themselves are case-sensitive however. It's not necessarily OK to uppercase a URL. But the server application may be case-insensitive. If you control the endpoints and know you can use all uppercase, this is a way to perhaps squeeze into version 1.

Finally I'll say that version 1 QR codes are a little weird since they have no alignment pattern. Without a fourth point to find, it can't (well, the dumb-but-effective process employed by Barcode Scanner and by extension a lot of scanners) account for perspective distortion. It happens to work with only small tilt. But version 2 actually has a small advantage for decodability with that alignment pattern.

like image 21
Sean Owen Avatar answered Nov 18 '22 18:11

Sean Owen


QR readers usually identify as a URL any text that conform to ANY of this conditions:

  • Text starts with http:// (or HTTP://)
  • Text starts with www.
  • Text starts with MEBKM: (NTT DoCoMo format for web bookmark)

You should be fine without http if your url starts with www. but it's not your case.

As Sean points out, you should use all-caps urls instead.

You can fit up to 24 alphanumeric characters in a Version 1 level L QR, wich is just enought for a url shortener. Example:

HTTP://1QR.ES/AAAAAAAAAA

HTTP://1QR.ES/AAAAAAAAAA

like image 4
NiloVelez Avatar answered Nov 18 '22 16:11

NiloVelez