title: temporary value dropped while borrowed and cannot resolve
body: <p>I am trying to sending data to an API endpoint and running into some borrowing issuess</p>
  <p>Code</p>
  <pre class="lang-rust prettyprint-override"><code>
  #[post(&quot;/send&quot;)]
  async fn send(field: web::Json&lt;Region&gt;, data: web::Data&lt;Datum&gt;) -&gt; impl Responder {
      let address = data.address;
      let provider = Provider::try_from(&amp;data.provider).unwrap();
      let provider = Arc::new(provider);
      let coordinate = Coordinate::new(address, provider);
      let response = coordinate
          .method::&lt;_, (Vec&lt;U256&gt;, U256)&gt;(&quot;send&quot;, (field.region, field.price))
          .unwrap()
          .send()
          .await;
  
      HttpResponse::Created()
          .content_type(ContentType::json())
          .body(response.unwrap().to_string())
  }
  </code></pre>
  <p>Error</p>
  <pre class="lang-bash prettyprint-override"><code>
  error[E0716]: temporary value dropped while borrowed
     --&gt; app/src/main.rs:132:14
      |
  132 |       let response = land_contract
      |  ______________^
  133 | |         .method::&lt;_, (Vec&lt;U256&gt;, U256)&gt;(&quot;send&quot;, (field.region, field.price))
  134 | |         .unwrap()
      | |_________________^ creates a temporary which is freed while still in use
  135 |           .send()
  136 |           .await;
      |                 - temporary value is freed at the end of this statement
  ...
  141 |   }
      |   - borrow might be used here, when `tx` is dropped and runs the destructor`
      |
      = note: consider using a `let` binding to create a longer lived value
  
  error[E0507]: cannot move out of dereference of `Json&lt;Region&gt;`
     --&gt; app/src/main.rs:133:50
      |
  133 |         .method::&lt;_, (Vec&lt;U256&gt;, U256)&gt;(&quot;send&quot;, (field.region, field.price))
      |                                                  ^^^^^^^^^^^^ move occurs because value has type `Vec&lt;U256&gt;`, which does not implement the `Copy` trait
  </code></pre>