mirror of
https://github.com/fafhrd91/actix-web
synced 2025-06-27 15:29:03 +02:00
remove Deref
This commit is contained in:
@ -113,7 +113,7 @@ where
|
||||
|
||||
fn call(&mut self, req: ServiceRequest<P>) -> Self::Future {
|
||||
// negotiate content-encoding
|
||||
let encoding = if let Some(val) = req.headers.get(ACCEPT_ENCODING) {
|
||||
let encoding = if let Some(val) = req.headers().get(ACCEPT_ENCODING) {
|
||||
if let Ok(enc) = val.to_str() {
|
||||
AcceptEncoding::parse(enc, self.encoding)
|
||||
} else {
|
||||
@ -157,7 +157,7 @@ where
|
||||
fn poll(&mut self) -> Poll<Self::Item, Self::Error> {
|
||||
let resp = futures::try_ready!(self.fut.poll());
|
||||
|
||||
let enc = if let Some(enc) = resp.head().extensions().get::<Enc>() {
|
||||
let enc = if let Some(enc) = resp.response().extensions().get::<Enc>() {
|
||||
enc.0
|
||||
} else {
|
||||
self.encoding
|
||||
|
@ -51,7 +51,7 @@ use crate::error::{ResponseError, Result};
|
||||
use crate::http::header::{self, HeaderName, HeaderValue};
|
||||
use crate::http::{self, HttpTryFrom, Method, StatusCode, Uri};
|
||||
use crate::service::{ServiceRequest, ServiceResponse};
|
||||
use crate::{HttpMessage, HttpResponse};
|
||||
use crate::HttpResponse;
|
||||
|
||||
/// A set of errors that can occur during processing CORS
|
||||
#[derive(Debug, Display)]
|
||||
@ -702,9 +702,9 @@ where
|
||||
if self.inner.preflight && Method::OPTIONS == *req.method() {
|
||||
if let Err(e) = self
|
||||
.inner
|
||||
.validate_origin(&req)
|
||||
.and_then(|_| self.inner.validate_allowed_method(&req))
|
||||
.and_then(|_| self.inner.validate_allowed_headers(&req))
|
||||
.validate_origin(req.head())
|
||||
.and_then(|_| self.inner.validate_allowed_method(req.head()))
|
||||
.and_then(|_| self.inner.validate_allowed_headers(req.head()))
|
||||
{
|
||||
return Either::A(ok(req.error_response(e)));
|
||||
}
|
||||
@ -739,7 +739,7 @@ where
|
||||
let _ = resp.header(header::ACCESS_CONTROL_ALLOW_HEADERS, headers);
|
||||
})
|
||||
.if_some(
|
||||
self.inner.access_control_allow_origin(&req),
|
||||
self.inner.access_control_allow_origin(req.head()),
|
||||
|origin, resp| {
|
||||
let _ = resp.header(header::ACCESS_CONTROL_ALLOW_ORIGIN, origin);
|
||||
},
|
||||
@ -762,7 +762,7 @@ where
|
||||
Either::A(ok(req.into_response(res)))
|
||||
} else if req.headers().contains_key(header::ORIGIN) {
|
||||
// Only check requests with a origin header.
|
||||
if let Err(e) = self.inner.validate_origin(&req) {
|
||||
if let Err(e) = self.inner.validate_origin(req.head()) {
|
||||
return Either::A(ok(req.error_response(e)));
|
||||
}
|
||||
|
||||
@ -771,7 +771,7 @@ where
|
||||
Either::B(Either::B(Box::new(self.service.call(req).and_then(
|
||||
move |mut res| {
|
||||
if let Some(origin) =
|
||||
inner.access_control_allow_origin(&res.request())
|
||||
inner.access_control_allow_origin(res.request().head())
|
||||
{
|
||||
res.headers_mut()
|
||||
.insert(header::ACCESS_CONTROL_ALLOW_ORIGIN, origin.clone());
|
||||
@ -869,8 +869,8 @@ mod tests {
|
||||
.method(Method::OPTIONS)
|
||||
.to_srv_request();
|
||||
|
||||
assert!(cors.inner.validate_allowed_method(&req).is_err());
|
||||
assert!(cors.inner.validate_allowed_headers(&req).is_err());
|
||||
assert!(cors.inner.validate_allowed_method(req.head()).is_err());
|
||||
assert!(cors.inner.validate_allowed_headers(req.head()).is_err());
|
||||
let resp = test::call_success(&mut cors, req);
|
||||
assert_eq!(resp.status(), StatusCode::BAD_REQUEST);
|
||||
|
||||
@ -879,8 +879,8 @@ mod tests {
|
||||
.method(Method::OPTIONS)
|
||||
.to_srv_request();
|
||||
|
||||
assert!(cors.inner.validate_allowed_method(&req).is_err());
|
||||
assert!(cors.inner.validate_allowed_headers(&req).is_err());
|
||||
assert!(cors.inner.validate_allowed_method(req.head()).is_err());
|
||||
assert!(cors.inner.validate_allowed_headers(req.head()).is_err());
|
||||
|
||||
let req = TestRequest::with_header("Origin", "https://www.example.com")
|
||||
.header(header::ACCESS_CONTROL_REQUEST_METHOD, "POST")
|
||||
@ -961,9 +961,9 @@ mod tests {
|
||||
let req = TestRequest::with_header("Origin", "https://www.unknown.com")
|
||||
.method(Method::GET)
|
||||
.to_srv_request();
|
||||
cors.inner.validate_origin(&req).unwrap();
|
||||
cors.inner.validate_allowed_method(&req).unwrap();
|
||||
cors.inner.validate_allowed_headers(&req).unwrap();
|
||||
cors.inner.validate_origin(req.head()).unwrap();
|
||||
cors.inner.validate_allowed_method(req.head()).unwrap();
|
||||
cors.inner.validate_allowed_headers(req.head()).unwrap();
|
||||
}
|
||||
|
||||
#[test]
|
||||
|
@ -10,7 +10,6 @@ use futures::{Async, Poll, Stream};
|
||||
use crate::dev::Payload;
|
||||
use crate::error::{Error, PayloadError};
|
||||
use crate::service::ServiceRequest;
|
||||
use crate::HttpMessage;
|
||||
|
||||
/// `Middleware` for decompressing request's payload.
|
||||
/// `Decompress` middleware must be added with `App::chain()` method.
|
||||
|
@ -148,7 +148,7 @@ impl<P> FromRequest<P> for Identity {
|
||||
|
||||
#[inline]
|
||||
fn from_request(req: &mut ServiceFromRequest<P>) -> Self::Future {
|
||||
Ok(Identity(req.clone()))
|
||||
Ok(Identity(req.request().clone()))
|
||||
}
|
||||
}
|
||||
|
||||
@ -507,7 +507,7 @@ mod tests {
|
||||
let resp =
|
||||
test::call_success(&mut srv, TestRequest::with_uri("/login").to_request());
|
||||
assert_eq!(resp.status(), StatusCode::OK);
|
||||
let c = resp.cookies().next().unwrap().to_owned();
|
||||
let c = resp.response().cookies().next().unwrap().to_owned();
|
||||
|
||||
let resp = test::call_success(
|
||||
&mut srv,
|
||||
|
@ -15,7 +15,7 @@ use time;
|
||||
use crate::dev::{BodySize, MessageBody, ResponseBody};
|
||||
use crate::error::{Error, Result};
|
||||
use crate::service::{ServiceRequest, ServiceResponse};
|
||||
use crate::{HttpMessage, HttpResponse};
|
||||
use crate::HttpResponse;
|
||||
|
||||
/// `Middleware` for logging request and response info to the terminal.
|
||||
///
|
||||
@ -201,7 +201,7 @@ where
|
||||
|
||||
if let Some(ref mut format) = self.format {
|
||||
for unit in &mut format.0 {
|
||||
unit.render_response(&res);
|
||||
unit.render_response(res.response());
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user