私のアプリが行うすべての応答にAccess-Control-Allow-Origin: *
を追加します。 the docsによればIronのAfterMiddlewareにヘッダを追加するには?
、AfterMiddleware
が共通の場合には、この
ため正確で、完全な応答は、単にそのような追加ヘッダとして、その応答の後処理を行うチェーンのハンドラとAfterMiddlewareによって生成されますまたはロギング。
だから私はこのようなを使用しようとしました:
struct CorsMiddleware;
impl AfterMiddleware for CorsMiddleware {
fn after(&self, req: &mut Request, res: Response) -> IronResult<Response> {
res.headers.set(hyper::header::AccessControlAllowOrigin::Any);
Ok(res)
}
}
しかし、私はエラーcannot borrow immutable field "res.headers" as mutable
を取得します。私はこれが不変のResponse
変数型によって引き起こされたのかどうかはわかりませんが、これは特性関数の署名なので変更できません。では、私は何か不変なものを突然変異させるはずですか?可能であれば、ヘッダーを1つ追加するだけで全体の応答をコピーするのは変です。錆で
また、downvoteをクリックした人が、この質問を作成したときに間違っていたことを説明するとすばらしいでしょう。 – Tommi