2017-09-12 2 views
0

Je suis nouveau dans le domaine du logiciel, s'il vous plaît avoir de la patience avec ma question et les erreurs des termes techniques:Comment héberger JSON-serveur d'azur

Pièces: - J'ai développé une application front-end à l'aide Angular4. L'URL de base définie dans l'application angulaire est 'http://localhost:3000/'. Mon application utilise api restangulaire pour interagir avec json-server (j'ai créé un dossier nommé json-server et il a db.json et dossier public). Il fonctionne parfaitement bien quand je lance la commande utilisant json-server: json-server json-server --watch db.json

Mon application est finalisée et j'ai donc créé une version de production. Par la suite j'ai déplacé tous mes dossiers du dossier de dist vers le dossier public de json-server. Quand je démarre le serveur json, mon application fonctionne bien.

Problème réel: - Maintenant, je voulais héberger en azur. J'ai simplement copié tous les fichiers/dossiers (db.json et dossier public) du dossier json-server tel quel et les ai placés dans le cloud azure. Quand l'hébergement en azur est terminé et que j'ouvre l'url dans le navigateur, j'ai une erreur - "vous n'avez pas la permission de voir".

Pour corriger l'erreur ci-dessus j'ai supprimé tous les fichiers d'azur puis j'ai copié tous les fichiers du dossier dist et les ai placés dans le nuage azur. En utilisant cela, je pourrais voir l'application dans le navigateur mais pas d'images. À l'image il y a une erreur - Réponse avec le statut: 0 pour l'URL: null

Quand je démarre localement le serveur de json, tout fonctionne bien mais bien sûr quand la même page Web s'ouvrent d'autres machines j'ai eu la même erreur - Réponse avec status: 0 pour URL: null

Existe-t-il un moyen d'exécuter json-server dans azure afin que toutes les machines/mobiles lors de l'accès à l'URL, puissent voir la bonne page web sans aucune erreur.

Répondre

0

étape à l'étape pour exécuter json-server sur Azure Web App:

  1. Ouvrez votre navigateur et accédez au service App Editor (https://<your-app-name>.scm.azurewebsites.net/dev/wwwroot/)

  2. Exécutez la commande dans la console (Ctrl + Maj + C)

    npm install json-server --save-dev 
    
  3. Mettez tout fichier/dossier (db.json et dossier public) dans le dossier wwwroot

  4. Créer une server.js avec le contenu suivant

    const jsonServer = require('json-server') 
    const server = jsonServer.create() 
    const router = jsonServer.router('db.json') 
    const middlewares = jsonServer.defaults() 
    
    server.use(middlewares) 
    server.use(router) 
    server.listen(process.env.PORT,() => { 
        console.log('JSON Server is running') 
    }) 
    
  5. Cliquez sur Exécuter (Ctrl + F5), cela va générer automatiquement le fichier web.config et ouvrez votre site dans le navigateur.

    enter image description here

+0

Pouvez-vous s'il vous plaît dites-moi où dois-je mettre le fichier server.js. – Raj

+0

Veuillez le placer sous le dossier wwwroot. –

+0

merci beaucoup, vous m'avez beaucoup aidé. Enfin, je peux maintenant l'héberger sur Azure et tout commence à fonctionner comme prévu. – Raj

0

Vous pouvez utiliser ce qui suit pour configurer rapidement un service simulé qui peut servir API REST de fichiers JSON statiques.

json-server

Il suffit d'installer le module NodeJS (NPM de $ installer -g JSON-serveur).Remplir un fichier json statique dans le format ci-joint, puis exécutez le serveur JSON ($ json-server --watch db.json --port 3000)

+0

je vous remercie de votre suggestion mais je souhaite en fait héberger le serveur json sur azure. – Raj