mirror of
https://github.com/appium/appium.git
synced 2026-10-26 18:51:48 +08:00
* make allowing CORS conditional It turns out blindly allowing CORS could be a security hazard (who knew) See https://github.com/w3c/webdriver/pull/1362 for the conversation that led to this realization. This change makes the cross domain middleware conditional (defaulting to the current behavior). This way Appium can pass in 'false' based on a flag, for better server security. * actually include function parameter we can use from appium
appium-express
Express server tuned for to serve Appium.
Configuration
The appium-express server comes configured with:
- appropriate logging formats
- service of necessary static assets
- allowance of cross-domain requests
- default error handling
- fix for invalid content types sent by certain clients
To configure routes, a function that takes an Express server is passed into the server. This function can add whatever routes are wanted.
Usage
import { server } from 'appium-base-driver';
// configure the routes
function configureRoutes (app) {
app.get('/hello', (req, res) => {
res.header['content-type'] = 'text/html';
res.status(200).send('Hello');
});
app.get('/world', (req, res) => {
res.header['content-type'] = 'text/html';
res.status(200).send('World');
});
}
let port = 5000;
let host = 'localhost';
let appiumServer = await server(configureRoutes, port, host);
Watch
npm run watch
Test
npm test