1
0
mirror of https://github.com/fafhrd91/actix-web synced 2025-07-01 16:55:08 +02:00

Remove HttpResponseBuilder::json2() (#1903)

It's not necessary to keep both json() and json2() around since the
former reduces the ownership of its parameter to a borrow only to pass
the reference to the latter. Users can instead borrow themselves when
passing an owned value: there doesn't need to be two separate functions.

This change also makes HttpResponseBuilder::json() take T: Deref so it
can accept both references and web extractors like web::Json.
This commit is contained in:
Logan Magee
2021-01-18 03:14:29 -09:00
committed by GitHub
parent ee10148444
commit 0c8196f8b0
3 changed files with 17 additions and 43 deletions

View File

@ -239,7 +239,7 @@ where
/// web::resource("/people")
/// .route(web::post().to(|person: web::Json<Person>| async {
/// HttpResponse::Ok()
/// .json(person.into_inner())})
/// .json(person)})
/// ))
/// ).await;
///
@ -299,7 +299,7 @@ where
/// web::resource("/people")
/// .route(web::post().to(|person: web::Json<Person>| async {
/// HttpResponse::Ok()
/// .json(person.into_inner())})
/// .json(person)})
/// ))
/// ).await;
///
@ -1121,9 +1121,7 @@ mod tests {
#[actix_rt::test]
async fn test_response_json() {
let mut app = init_service(App::new().service(web::resource("/people").route(
web::post().to(|person: web::Json<Person>| {
HttpResponse::Ok().json(person.into_inner())
}),
web::post().to(|person: web::Json<Person>| HttpResponse::Ok().json(person)),
)))
.await;
@ -1142,9 +1140,7 @@ mod tests {
#[actix_rt::test]
async fn test_body_json() {
let mut app = init_service(App::new().service(web::resource("/people").route(
web::post().to(|person: web::Json<Person>| {
HttpResponse::Ok().json(person.into_inner())
}),
web::post().to(|person: web::Json<Person>| HttpResponse::Ok().json(person)),
)))
.await;
@ -1164,9 +1160,7 @@ mod tests {
#[actix_rt::test]
async fn test_request_response_form() {
let mut app = init_service(App::new().service(web::resource("/people").route(
web::post().to(|person: web::Form<Person>| {
HttpResponse::Ok().json(person.into_inner())
}),
web::post().to(|person: web::Form<Person>| HttpResponse::Ok().json(person)),
)))
.await;
@ -1190,9 +1184,7 @@ mod tests {
#[actix_rt::test]
async fn test_request_response_json() {
let mut app = init_service(App::new().service(web::resource("/people").route(
web::post().to(|person: web::Json<Person>| {
HttpResponse::Ok().json(person.into_inner())
}),
web::post().to(|person: web::Json<Person>| HttpResponse::Ok().json(person)),
)))
.await;