title: http4s json handling in authed routes
body: <p>I am using <code>Scala 3</code> and <code>http4s 1.0.0-M35</code>. I want to use auth with json handling.</p>
  <pre><code>val routes = AuthedRoutes.of[User, IO] {
  case request@POST -&gt; Root / &quot;dialog&quot; / LongVar(dialogId) / &quot;send&quot; as user =&gt; {
        for {
          sendMessageRequest &lt;- request.as[SendMessageRequest]
  </code></pre>
  <p>But got error</p>
  <pre><code>[error]    |        sendMessageRequest &lt;- request.as[SendMessageRequest]
  [error]    |                              ^^^^^^^^^^
  [error]    |value as is not a member of org.http4s.ContextRequest[cats.effect.IO, repository.User], but could be made available as an extension method.
  </code></pre>
  <p>It suggests some imports:</p>
  <pre><code>[error]    |One of the following imports might fix the problem:
  [error]    |
  [error]    |  import cats.Functor.nonInheritedOps.toFunctorOps
  [error]    |  import cats.Functor.ops.toAllFunctorOps
  [error]    |  import cats.NonEmptyTraverse.ops.toAllNonEmptyTraverseOps
  [error]    |  import cats.Traverse.ops.toAllTraverseOps
  [error]    |  import cats.implicits.toFunctorOps
  [error]    |  import cats.syntax.all.toFunctorOps
  [error]    |  import cats.syntax.functor.toFunctorOps
  </code></pre>
  <p>But after importing it, I have another error:</p>
  <p><code>sendMessageRequest</code> type is <code>org.http4s.ContextRequest[cats.effect.IO, service.CreateDialogRequest]</code></p>
  <p>How to use json handling in AuthedRoutes it?</p>