現在、Axiosがレスポンスを処理するときにresponse.request.responseURL
の値を設定する必要がある機能を記述しようとしています。しかし、私はこの値をモクシーズで設定することはできません。レスキューをレスポンスに指定する
it('resets list selection if input contents were replaced', (done) => {
component.currently_selected_list_value = 10;
component.last_called_url = 'henkiehoutman';
let input = domElt.querySelector('input');
ReactTestUtils.Simulate.change(input);
moxios.wait(() => {
let request = moxios.requests.mostRecent();
request.respondWith({
status: 200,
response: [{
customer_info_customers: ['', '', '', '', ''],
domain_info_customers: {},
}],
request: {responseURL: 'banaan'}
}).then(() => {
// The contents were replaced, so it's best to forget whatever our selection was.
expect(component.currently_selected_list_value).toEqual(-1);
done();
});
});
});
これは私の実際のアプリケーションがどのように見えるかです::ここに私のテストは次のようになります。私は、この値が何であるかログインしたときに、しかし
onChange (event) {
return axios.get(
this.props.ApiUrl + encodeURIComponent(event.target.value)
).then(
(response) => {
let response_url = response.request.responseURL; // This is the value I want to set manually.
if(this.shouldHandleResponse(response_url)){
this.last_called_url = response_url;
let data = response.data;
this.setState({results: data, dropdown: data.length > 0});
if (this.currently_selected_list_value > max_index) {
this.currently_selected_list_value = max_index;
}
}
}
);
},
、それだけでundefined
を言います。そして、これは(それが少し読みやすくですので引用符に入れて)実際のresponse.request
値が何であるかです:
LOG:リクエスト{解決:機能(A){...}、拒否:機能(A {0} ...、{0:...}、timeout:0、...、{0} xsrfCookieName: 'XSRF-TOKEN'、xsrfHeaderName: 'X-XSRF-TOKEN'、maxContentLength:-1、validateStatus:function validateStatus(status){...}、ヘッダー:オブジェクト{Accept:...、X-CSRFToken: X-CSRFToken: 'my_csrf_token':メソッド: 'get'、url: 'my_api_url /'、data:undefined}、ヘッダー:オブジェクト{Accept: 'application/json、text/plain、/' }、url: 'my_api_url /'、タイムアウト:0、withCredentials:false、responseType:undefined}
responseURL
は常に定義する必要があるため、これは私のアプリケーションを壊します。それは私がmoxiosで定義した要求を上書きしているようです。これは必ずしも悪いことではありません。なぜなら、これらのことが適切に機能することが必要だと思うからです。しかし、このリクエストにいくつかの値を追加できたらうれしいです。
So;このリクエストにresponseURL
値を追加するにはどうすればよいですか?