I had assumed the same thing, and was using ‘+’ before. However discovered today that my scopes weren’t fully working. This fixed when I replaced all +'s with spaces.
The + works for me if I add it into an anchor tag in HTML. I noticed that you have an extra mark after channel_read. Is that a post error, or are you sending that request as the URL? There is an extra mark in the auth code flow example, so that could be the confounding thing.