J'ai besoin d'obtenir des données dans une application native native avec axios. Je peux obtenir des données avec une méthode GET simple comme ci-dessous:
class AlbumList extends Component {
state = { albums: [] };
componentWillMount() {
//axios.get('https://rallycoding.herokuapp.com/api/music_albums') .then(response => console.log(response));
axios.get('http://rallycoding.herokuapp.com/api/music_albums')
.then(response => this.setState({ albums: response.data }));
}
renderAlbums() {
return this.state.albums.map(album =>
<AlbumDetail key={album.title} album={album} />);
// return this.state.albums.map(album => <Text>{album.title}</Text>);
}
render() {
console.log(this.state);
return (
<View>
{this.renderAlbums()}
</View>
);
}
}
Comment puis-je obtenir des données de l'API avec la méthode POST
et je dois également passer l'en-tête et le nom d'utilisateur api, le mot de passe api, apitoken?
J'ai besoin de quelque chose comme https://stackoverflow.com/a/41358543/9490 mais avec [~ # ~] axios [~ # ~] .
Modifier:
J'ai besoin d'obtenir des données de LINNWORK API. si quelqu'un l'a fait, veuillez guider. Ils doivent d'abord autoriser puis je peux obtenir des données à partir de là. Authrize donc et prochaine étape.
la méthode axios post
prend 3 arguments, c'est-à-dire url, data & config.
vous pouvez structurer la demande de publication axios comme suit:
axios.post(
'http://rallycoding.herokuapp.com/api/music_albums',
{
'param1': 'value1',
'param2': 'value2',
//other data key value pairs
},
{
headers: {
'api-token': 'xyz',
//other header fields
}
}
);
Dans votre cas, vous devez accéder à https://api.linnworks.net/api/Inventory/GetCategories
, qui selon docs requiert token
de l'auth api dans Authorization
en-tête. Ainsi, votre demande GET via axios sera:
axios.get("https://api.linnworks.net/api/Inventory/GetCategories", {
headers: {
'Authorization': 'token-from-auth-api'
}
}).then((response) => {
console.log(response.data);
})