Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/442.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Axios请求引发未知错误_Javascript_Node.js_Reactjs_Protocol Buffers_Jestjs - Fatal编程技术网

Javascript Axios请求引发未知错误

Javascript Axios请求引发未知错误,javascript,node.js,reactjs,protocol-buffers,jestjs,Javascript,Node.js,Reactjs,Protocol Buffers,Jestjs,我正在尝试对正在开发的应用程序进行单元测试,但在axios中发出AJAX请求的函数方面遇到了问题。以下是我为其编写的模拟函数(注意:MockPBufData.txt文件是一个使用协议缓冲区序列化的文件,我从datamine.mta.info下载了该文件。下载该文件可能会弄乱其格式并导致此错误?) 下面是失败的测试(我期望的属性是在datamine.mta.info上找到的每个反序列化文件上): 最后,这里是Jest错误以及来自控制台的堆栈跟踪: expect(object)[.not].toHa

我正在尝试对正在开发的应用程序进行单元测试,但在axios中发出AJAX请求的函数方面遇到了问题。以下是我为其编写的模拟函数(注意:MockPBufData.txt文件是一个使用协议缓冲区序列化的文件,我从datamine.mta.info下载了该文件。下载该文件可能会弄乱其格式并导致此错误?)

下面是失败的测试(我期望的属性是在datamine.mta.info上找到的每个反序列化文件上):

最后,这里是Jest错误以及来自控制台的堆栈跟踪:

expect(object)[.not].toHaveProperty(path, value)

    Expected object to be an object. Received:
      undefined: undefined

      at Object.<anonymous>.it (src/tests/api.test.js:12:37)
      at Promise.resolve.then.el (node_modules/p-map/index.js:42:16)
      at process._tickCallback (internal/process/next_tick.js:109:7)


{ Error: Network Error
          at createError (/Users/Ben/React/subway-checker/node_modules/axios/lib/core/createError.js:16:15)
          at XMLHttpRequest.handleError [as onerror] (/Users/Ben/React/subway-checker/node_modules/axios/lib/adapters/xhr.js:87:14)
          at XMLHttpRequest.callback.(anonymous function) (/Users/Ben/React/subway-checker/node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:289:32)
          at invokeEventListeners (/Users/Ben/React/subway-checker/node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:219:27)
          at invokeInlineListeners (/Users/Ben/React/subway-checker/node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:166:7)
          at EventTargetImpl._dispatch (/Users/Ben/React/subway-checker/node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:122:7)
          at EventTargetImpl.dispatchEvent (/Users/Ben/React/subway-checker/node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:87:17)
          at XMLHttpRequest.dispatchEvent (/Users/Ben/React/subway-checker/node_modules/jsdom/lib/jsdom/living/generated/EventTarget.js:61:35)
          at XMLHttpRequest.abort (/Users/Ben/React/subway-checker/node_modules/jsdom/lib/jsdom/living/xmlhttprequest.js:405:16)
          at Object.abort (/Users/Ben/React/subway-checker/node_modules/jsdom/lib/jsdom/living/xhr-utils.js:315:13)
          at RequestManager.close (/Users/Ben/React/subway-checker/node_modules/jsdom/lib/jsdom/living/nodes/Document-impl.js:146:21)
          at Window.close (/Users/Ben/React/subway-checker/node_modules/jsdom/lib/jsdom/browser/Window.js:362:29)
          at JSDOMEnvironment.dispose (/Users/Ben/React/subway-checker/node_modules/jest-environment-jsdom/build/index.js:44:19)
          at Promise.resolve.then (/Users/Ben/React/subway-checker/node_modules/jest/node_modules/jest-cli/build/runTest.js:102:17)
          at process._tickCallback (internal/process/next_tick.js:109:7)
        config: 
         { adapter: [Function: xhrAdapter],
           transformRequest: { '0': [Function: transformRequest] },
           transformResponse: { '0': [Function: transformResponse] },
           timeout: 0,
           xsrfCookieName: 'XSRF-TOKEN',
           xsrfHeaderName: 'X-XSRF-TOKEN',
           maxContentLength: -1,
           validateStatus: [Function: validateStatus],
           headers: { Accept: 'application/json, text/plain, */*' },
           method: 'get',
           url: './MockPBufData.txt',
           data: undefined },
        request: 
         XMLHttpRequest {
           onabort: null,
           onerror: [Function: handleError],
           onload: null,
           onloadend: null,
           onloadstart: null,
           onprogress: null,
           ontimeout: [Function: handleTimeout],
           upload: 
            XMLHttpRequestUpload {
              onabort: null,
              onerror: null,
              onload: null,
              onloadend: null,
              onloadstart: null,
              onprogress: null,
              ontimeout: null,
              _ownerDocument: [Object] },
           onreadystatechange: [Function: handleLoad] },
        response: undefined }
expect(object)[.not].toHaveProperty(路径,值)
预期对象是一个对象。收到:
未定义:未定义
at Object..it(src/tests/api.test.js:12:37)
在Promise.resolve.then.el(node_modules/p-map/index.js:42:16)
在进程中。_tick回调(内部/process/next_tick.js:109:7)
{错误:网络错误
在createError(/Users/Ben/React/subway checker/node_modules/axios/lib/core/createError.js:16:15)
在XMLHttpRequest.handleError[as-onerror](/Users/Ben/React/subway-checker/node_-modules/axios/lib/adapters/xhr.js:87:14)
在XMLHttpRequest.callback.(匿名函数)(/Users/Ben/React/subway checker/node_modules/jsdom/lib/jsdom/living/events/EventTarget impl.js:289:32)
在invokeEventListeners(/Users/Ben/React/subway checker/node_modules/jsdom/lib/jsdom/living/events/EventTarget impl.js:219:27)
在invokeInlineListeners(/Users/Ben/React/subway checker/node_modules/jsdom/lib/jsdom/living/events/EventTarget impl.js:166:7)
在EventTargetImpl.发布时(/Users/Ben/React/subway checker/node_modules/jsdom/lib/jsdom/living/events/EventTarget impl.js:122:7)
在EventTargetImpl.dispatchEvent(/Users/Ben/React/subway checker/node_modules/jsdom/lib/jsdom/living/events/EventTarget impl.js:87:17)
在XMLHttpRequest.dispatchEvent(/Users/Ben/React/subway checker/node_modules/jsdom/lib/jsdom/living/generated/EventTarget.js:61:35)
在XMLHttpRequest.abort(/Users/Ben/React/subway checker/node_modules/jsdom/lib/jsdom/living/XMLHttpRequest.js:405:16)
在Object.abort(/Users/Ben/React/subway checker/node_modules/jsdom/lib/jsdom/living/xhr utils.js:315:13)
在RequestManager.close(/Users/Ben/React/subway checker/node_modules/jsdom/lib/jsdom/living/nodes/Document impl.js:146:21)
在Window.close(/Users/Ben/React/subway checker/node_modules/jsdom/lib/jsdom/browser/Window.js:362:29)
在JSDOMEnvironment.dispose(/Users/Ben/React/subway checker/node_modules/jest-environment jsdom/build/index.js:44:19)
在Promise.resolve.then(/Users/Ben/React/subway checker/node_modules/jest/node_modules/jest cli/build/runTest.js:102:17)
在进程中。_tick回调(内部/process/next_tick.js:109:7)
配置:
{适配器:[函数:xhrAdapter],
transformRequest:{0':[函数:transformRequest]},
transformResponse:{0':[函数:transformResponse]},
超时:0,
xsrfCookieName:'XSRF-TOKEN',
xsrfHeaderName:'X-XSRF-TOKEN',
maxContentLength:-1,
validateStatus:[函数:validateStatus],
标题:{Accept:'application/json,text/plain,*/*'},
方法:“get”,
url:“./MockPBufData.txt”,
数据:未定义},
请求:
XMLHttpRequest{
onabort:null,
OneError:[函数:handleError],
onload:null,
onloadend:null,
onloadstart:null,
onprogress:null,
ontimeout:[函数:handleTimeout],
上传:
XMLHttpRequestUpload{
onabort:null,
onerror:null,
onload:null,
onloadend:null,
onloadstart:null,
onprogress:null,
ontimeout:null,
_ownerDocument:[对象]},
onreadystatechange:[函数:handleLoad]},
响应:未定义}

您无法访问函数的内部变量(
RequestMock.feed
)。。。该函数实际上返回它,因此您只需要以下内容:


expect(RequestMock()).toHaveProperty('header.gtfs\u realtime\u version','1.0')

您无法访问函数的内部变量(
RequestMock.feed
)。。。该函数实际上返回它,因此您只需要以下内容:


expect(RequestMock()).toHaveProperty('header.gtfs\u realtime\u version','1.0')

做了更改,我仍然会收到相同的错误。做了更改,我仍然会收到相同的错误。
import React from 'react';
import RequestMock from '../mocks/RequestMock';

it('makes decoded data accessible from RequestMock.feed', () => {

expect(RequestMock.feed).toHaveProperty('header.gtfs_realtime_version', '1.0');
});
expect(object)[.not].toHaveProperty(path, value)

    Expected object to be an object. Received:
      undefined: undefined

      at Object.<anonymous>.it (src/tests/api.test.js:12:37)
      at Promise.resolve.then.el (node_modules/p-map/index.js:42:16)
      at process._tickCallback (internal/process/next_tick.js:109:7)


{ Error: Network Error
          at createError (/Users/Ben/React/subway-checker/node_modules/axios/lib/core/createError.js:16:15)
          at XMLHttpRequest.handleError [as onerror] (/Users/Ben/React/subway-checker/node_modules/axios/lib/adapters/xhr.js:87:14)
          at XMLHttpRequest.callback.(anonymous function) (/Users/Ben/React/subway-checker/node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:289:32)
          at invokeEventListeners (/Users/Ben/React/subway-checker/node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:219:27)
          at invokeInlineListeners (/Users/Ben/React/subway-checker/node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:166:7)
          at EventTargetImpl._dispatch (/Users/Ben/React/subway-checker/node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:122:7)
          at EventTargetImpl.dispatchEvent (/Users/Ben/React/subway-checker/node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:87:17)
          at XMLHttpRequest.dispatchEvent (/Users/Ben/React/subway-checker/node_modules/jsdom/lib/jsdom/living/generated/EventTarget.js:61:35)
          at XMLHttpRequest.abort (/Users/Ben/React/subway-checker/node_modules/jsdom/lib/jsdom/living/xmlhttprequest.js:405:16)
          at Object.abort (/Users/Ben/React/subway-checker/node_modules/jsdom/lib/jsdom/living/xhr-utils.js:315:13)
          at RequestManager.close (/Users/Ben/React/subway-checker/node_modules/jsdom/lib/jsdom/living/nodes/Document-impl.js:146:21)
          at Window.close (/Users/Ben/React/subway-checker/node_modules/jsdom/lib/jsdom/browser/Window.js:362:29)
          at JSDOMEnvironment.dispose (/Users/Ben/React/subway-checker/node_modules/jest-environment-jsdom/build/index.js:44:19)
          at Promise.resolve.then (/Users/Ben/React/subway-checker/node_modules/jest/node_modules/jest-cli/build/runTest.js:102:17)
          at process._tickCallback (internal/process/next_tick.js:109:7)
        config: 
         { adapter: [Function: xhrAdapter],
           transformRequest: { '0': [Function: transformRequest] },
           transformResponse: { '0': [Function: transformResponse] },
           timeout: 0,
           xsrfCookieName: 'XSRF-TOKEN',
           xsrfHeaderName: 'X-XSRF-TOKEN',
           maxContentLength: -1,
           validateStatus: [Function: validateStatus],
           headers: { Accept: 'application/json, text/plain, */*' },
           method: 'get',
           url: './MockPBufData.txt',
           data: undefined },
        request: 
         XMLHttpRequest {
           onabort: null,
           onerror: [Function: handleError],
           onload: null,
           onloadend: null,
           onloadstart: null,
           onprogress: null,
           ontimeout: [Function: handleTimeout],
           upload: 
            XMLHttpRequestUpload {
              onabort: null,
              onerror: null,
              onload: null,
              onloadend: null,
              onloadstart: null,
              onprogress: null,
              ontimeout: null,
              _ownerDocument: [Object] },
           onreadystatechange: [Function: handleLoad] },
        response: undefined }