2017-11-03 8 views
0

私は、次の手順を実行して、アッカのhttp 10.0.10を使用してルーティングするために、基本的な認証を追加しようとしています:アッカHTTP基本認証タイプの不一致

def myUserPassAuthenticator(credentials: Credentials): Option[String] = 
    credentials match { 
    case p @ Credentials.Provided(id) if p.verify("p4ssw0rd") => Some(id) 
    case _ => None 
    } 

val routes: Route = 
    pathPrefix("foo") { 
    authenticateBasic(realm = "secure site", myUserPassAuthenticator) { user => 
     path("bar") { 
     pathEndOrSingleSlash { 
      complete("bla") 
     } 
     } 
    } 
    } 

これはコンパイルが、IDEAは私に次のエラー表示されます。

を9000/fooの/バーは404を返します誰もが、これはなぜ私が理解するのに役立ちますし、適切にこれらのディレクティブを構造化する方法:?さらにローカルホストのロード

Type mismatch, expected L => server.Route, actual String => server.Route

+0

インポートakka.http.scaladsl.server.Directives._ ??をインポートしましたか?それはokと思われる – EmiCareOfCell44

+0

はい、私はakka.http.scaladsl.server.Directives._をインポートしました – novon

答えて

1

上記のスナップは、akka httpに関する限り正しくあり、現在は正常に動作しています。私の問題は、正しく実装されていなかったディレクティブ階層の上位のCORSディレクティブが手に巻き込まれたことに起因します。

奇妙なことに、IDEAは型の不一致についてまだ不平を言っています。