Ulice vznikla ve 14. století a vedla ke hradbám, kde u jejího konce byla Špitálská či Šárecká brána. Používané názvy:[2]
na přelomu 16. s 17. století – název „Novosvětská“ nebo „Novosvětská přední“
od poloviny 18. století – název „Uršulinská“
od roku 1870 – současný název „Kanovnická“.
V letech 1911[3] až 1938 tudy byla vedena jednokolejná tramvajová trať od Hradu na Pohořelec. Jednalo se tak o historicky nejužší ulici s tramvajovou dopravou v Praze; na jednom místě byla šířka jen 3,5 metru.[4] 9. prosince 1913 večer se zde srazily tři tramvajové vozy; při vážné nehodě bylo 9 lidí těžce a asi 6 lehce zraněno.[5] Trať byla zrušena roku 1938 během reorganizace, při níž byla zprovozněna vhodněji trasovaná dvoukolejná trať v Jelení ulici.[4]