Tag: axios

如何将一个Node.js应用程序连接到一个docker服务的http rest API?

Node.js中的web应用程序通过axios连接到api。 import axios from 'axios' export function fetchList() { return axios.get('https://api.website.dev/v1/posts') } api运行良好,一切正常。 现在,我使用docker docker-compose在容器中运行完全相同的nodejs Web应用程序。 泊坞窗,compose.yml: 版本:“3.1” 服务: nodejs: image: node:alpine working_dir: /home/app restart: always ports: – "8000:8080" volumes: – ../nodejs:/home/app command: ["npm", "start"] axios调用Rest API返回一个错误: error { Error: getaddrinfo EAI_AGAIN api.domain.dev:443 at Object.exports._errnoException (util.js:1024:11) at errnoException (dns.js:55:15) at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:92:26) code: […]

vuejs 2 axios把,删除

我有一些没有答复的问题,我有一个像下面这样的Axios的示例Vuejs: updateItem: function () { var obj = {'name': this.name, 'dob': this.dob, 'gender': this.gender} // console.log(obj) var strngObj = qs.stringify(obj) this.axios.put('http://localhost:3000/crud/update/', this.update_id, strngObj, { headers: { 'Content-Type': 'application/x-www-form-urlencoded' } } // emulateJSON: true // fix cannot post as form data and urlencoded ).then((resp) => { if (resp.data.log === 'update success !') { this.items.push(resp.data.data) alert(resp.data.log) } […]

无法使用axios下载zip文件

这是我使用的代码: axios.get(fileUrl, {headers:{'X-API-TOKEN':xxxxxx}) 收到的响应数据是二进制的,我将转换为base64并保存在文件中。 保存后的zip文件。 如果我尝试打开文件,它说无效的zip错误。

如何从VueJs提交“multipart / form-data”

我在前端使用VueJs / axios,在nodejs使用简单的file upload工作。 到目前为止,所有的尝试都失败了。 虽然这可以在angular度1/2使用ng-upload和其他类似的插件100种方式实现。 但是VueJs似乎缺乏这个基本的function。 根据我的研究axios不支持“multipart / form-data”。 Ref https://github.com/mzabriskie/axios/issues/789 。 multer和其他nodejs库似乎可以从1/2的angular度无缝地使用“multipart / form-data”。 但是,相同的function不适用于VueJs。 除了axios支持“multipart / form-data”又名:WebKitFormBoundary吗? 非常感谢

无法从服务器获取对象数组

我正在写一个简单的网站,显示从服务器的对象列表 服务器:index.js var db = [{ username: 'admin', password: '1234', email: 'admin@gmail.com'}]; app.get('/getListAccount', (req, res)=>{ res.send(db); }) 显示:list.js import React from 'react'; import {connect} from 'react-redux'; import axios from 'axios'; class Transaction extends React.Component{ render(){ var {listUser} = this.props; var xhtml = listUser != null ? <p>{listUser.map((e, i)=><p key={i}>{e.username}</p>)}</p>: <p>No user</p>; return ( <div> <h1>Transaction</h1> […]

使用axios获取访问令牌

我正在使用Lyft API ,并试图找出如何使用axios和节点脚本获取访问令牌。 我可以通过使用Postman手动获取访问令牌,填写如下所示的表单: 当我填写表格时,我可以成功地从Lyft获得一个新的令牌。 我试图把这个转换成使用axios POST请求通过这样做: var axios = require('axios'); var data = { "grant_type": "client_credentials", "scope": "public", "client_id": "vaf7vX0LpsL5", "client_secret": "pVEosNa5TuK2x7UBG_ZlONonDsgJc3L1" }; var url = "https://api.lyft.com/oauth/token"; return axios.post(url, data) .then(function(response){ console.log(response.data) }) .catch(function (error) { console.log(error); }); 当我运行脚本时,我得到这个错误: { error_description: 'Unauthorized', error: 'invalid_client' } 我从axios请求中遗漏了什么? 任何帮助,将不胜感激!

反应应用程序的状态是不是最新的,我在我的数据库中?

我正在制作一个小杂货清单应用程序。 每当我提交一个表单,我执行一个axios请求将项目添加到数据库,并更新我的“项目”状态,以包含新的杂货项目。 问题是,除非我刷新页面,我的状态仍然显示一个空的“项目”数组。 “items”数组的初始状态是从数据库中提取出来的,通过使用componentDidMount并在那里设置“items”的状态。 另外,在我的状态,我有当前的用户也从数据库中拉出。 如果在添加我的第一个项目之后尝试loginthis.state.currentUser.shoppingList,它将显示一个空数组,即使我可以看到服务器端日志,指出该数组不是空的。 这是我的代码: **App Component** import React from 'react'; import ListForm from './ListForm'; import * as helpers from '../helpers'; class App extends React.Component{ state = { currentUser: {}, items: [] } componentDidMount() { console.log('Hello!'); helpers.fetchUser() .then(data => { this.setState({ currentUser: data, items: data.shoppingList }, () => { console.log(this.state) }); }); } […]

如何才能发送一个快速响应,直到asynchronous循环完成后?

想要做下面的事情。 我认为这是asynchronous调用的问题,因为我发送的响应始终是一个空数组,但API正在返回数据。 相当新的这一点,任何input,非常感谢! app.get('/:id/starships', (req, res) => { let person = findPersonById(people, req.params.id)[0]; let starshipUrls = person.starships; for(let i=0; i<starshipUrls.length; i++){ axios.get(starshipUrls[i]).then(response => { starships.push(response.data); }) .catch(err => console.log(err)); } res.json(starships); })

无法捕获并logging来自axios请求的错误响应

我在我的应用程序中有一个axios请求,为此我遵循axios npm文档。 这是我的axios请求 axios.post(helper.getLoginApi(), data) .then((response) => { console.log(response); this.props.history.push(from.pathname) }) .catch((error)=> { console.log(error); }) 我能够成功地在成功的请求上logging数据。 然而,当我故意产生一个错误,并尝试console.log它,我没有得到logging的结果,而我只是看到 POST http:// localhost:3000 / login 401(Unauthorized):3000 / login:1 错误:请求失败,状态码为401 login.js:66 在createError(createError.js:16) 在定居(定居点:18) 在XMLHttpRequest.handleLoad(xhr.js:77) 但是,当我在Chrome控制台中转到“networking”标签时,我可以看到下面的回复。 提前感谢您的帮助。

为什么当我根据DynDNS url名称进行axios请求而不是IP时,会出现CORS错误?

我有一个运行Node.js的树莓。 CORS被安装和configuration。 我设置了端口转发,但由于IP不断变化,我在DynDNS提供商注册。 我使用Axios的React.js来处理localhost:8080上的API请求。 有趣的是,如果我根据我的要求(例如) const ROOT_URL = 'http://81.23.563.80:5000/'; 每24小时不断变化,CORS模块正在完成工作,我可以执行我的请求。 但是,如果我想做对,并提出我的要求 const ROOT_URL = 'http://mydyndnsurl.provider.com/'; 那么我会得到他典型的错误信息: XMLHttpRequest无法加载http://mydyndnsurl.provider.com/ 。 对预检请求的响应不会通过访问控制检查:请求的资源上不存在“Access-Control-Allow-Origin”标头。 原因' http:// localhost:8080 '因此不被允许访问。 有没有人有这个问题的解决scheme?