Skip to main content

access localhost with smartphone and get no response from the server

  1. website works via localhost on pc
  2. access with smartphone to localhost via ip too (I receive html, css and js for client)
  3. when I click the button, a "hi" is also added but function "search()" is not executed
  4. but when I enter the url http://localhost:3000/users I get the "hi1"

What do i have to do to make this work?

Client Side

const button = document.querySelector("button");

button.addEventListener("click", () => {
    document.getElementById("imageDiv").innerHTML = "Hi";//this work   
    search();//this not work
});

async function search(){
    await fetch("http://localhost:3000/users")
    .then(response => response.json())
    .then(response => {
        var image;   
        image = JSON.parse(JSON.stringify(Object.assign({},response)));
        document.getElementById("imageDiv").innerHTML = response;
    })};

Server Side

const express = require('express');
const bodyParser = require('body-parser');
const path = require("path"); // window or mac
const cors = require('cors');
const app = express();
const port = 3000;
//var word = "";
//const router = express.Router();


// configure CORS to avoid CORS errors
app.use(cors());

// configure body parser so we can read req.body
app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.json());

app.use(express.static('./client'));

app.get('/', (req, res) => {
    res.sendFile("./index.html");
});


app.get("/users", (req, res) => {  
    datafiles = ["hi1"];
    res.json(datafiles);
    res.status(200);
});


app.listen(port, () => {
    console.log(`Server listening on http://localhost:${port}`);
});
Via Active questions tagged javascript - Stack Overflow https://ift.tt/1KpsiEP

Comments