當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript express.json函數代碼示例

本文整理匯總了TypeScript中express.json函數的典型用法代碼示例。如果您正苦於以下問題:TypeScript json函數的具體用法?TypeScript json怎麽用?TypeScript json使用的例子?那麽, 這裏精選的函數代碼示例或許可以為您提供幫助。


在下文中一共展示了json函數的6個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: makeHttpServer

export function makeHttpServer(config: Config) {
  const app = express()
  const server = new AdminAPI(config)

  app.use(expressWinston.logger({
    winstonInstance: logger
  }))

  app.use(cors())
  
  app.post(/\/v1\/admin\/reload/, (req: express.Request, res: express.Response) => {
    return server.checkAuthorization(req.headers['authorization'])
      .then((authResult) => {
        if (!authResult) {
          return { statusCode: 403, status: { error: 'forbidden' } }
        }
        
        return server.handleReload()
      })
      .then(reloadStatus => writeResponse(res, reloadStatus.status, reloadStatus.statusCode))
  })

  app.get(/\/v1\/admin\/config/, (req: express.Request, res: express.Response) => {
    return server.checkAuthorization(req.headers['authorization'])
      .then((authResult) => {
        if (!authResult) {
          return { statusCode: 403, status: { error: 'forbidden' } }
        }

        return server.handleGetConfig()
      })
      .then((configData) => writeResponse(res, configData.status, configData.statusCode))
  })

  app.post(
    /\/v1\/admin\/config/, express.json(),
    (req: express.Request, res: express.Response) => {
      return server.checkAuthorization(req.headers['authorization'])
        .then((authResult) => {
          if (!authResult) {
            return { statusCode: 403, status: { error: 'forbidden' } }
          }

          const newConfig = req.body
          return server.handleSetConfig(newConfig)
        })
        .then((configStatus) => writeResponse(res, configStatus.status, configStatus.statusCode))
    })

  return app
}
開發者ID:blockstack,項目名稱:blockstack-registrar,代碼行數:51,代碼來源:http.ts

示例2: function

app.get('/', function (req, res) {
    res.status(200).send('ok');
});
var server = app.listen(3000, function () {
    var port = server.address().port;
    console.log('Example app listening at port %s', port);
});


// all environments
app.set('port', process.env.PORT || 3000);
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');
app.use(express.favicon());
app.use(express.logger('dev'));
app.use(express.json());
app.use(express.urlencoded());
app.use(express.methodOverride());
app.use(app.router);

import stylus = require('stylus');
app.use(stylus.middleware(path.join(__dirname, 'public')));
app.use(express.static(path.join(__dirname, 'public')));

// development only
if ('development' == app.get('env')) {
    app.use(express.errorHandler());
}

app.get('/', routes.index);
app.get('/about', routes.about);
開發者ID:nrouelle,項目名稱:KeepItUp,代碼行數:31,代碼來源:server.ts

示例3: next

    app.use((req, res, next) => {
        console.log('%s %s', req.method, req.url);
        next();
    });

    app.use((err: any, req: express.Request, res: express.Response, next: express.NextFunction) => {
        console.error(err);
        next(err);
    });

    app.get('/', (req, res) => {
        res.send('hello world');
    });

    // Accept json app-wide or on one endpoint.
    app.use(express.json({ limit: "200kb" }));
    app.post('/echo', express.json(), (req, res) => {
        res.json(req.body);
    });

    // Accept urlencoded app-wide or on one endpoint.
    app.use(express.urlencoded({
        extended: false,
        parameterLimit: 16
    }));
    app.post('/search', express.urlencoded(), (req, res) => {
        res.json(Object.keys(req.body));
    });

    const router = express.Router({ caseSensitive: true, mergeParams: true, strict: true });
開發者ID:AbraaoAlves,項目名稱:DefinitelyTyped,代碼行數:30,代碼來源:express-tests.ts

示例4: function

    app.basePath = "/Users/arein/node/letterapp";
} else {
    app.basePath = "/var/www/letterapp";
}

var allowCrossDomain = function(req, res, next) {
    res.header('Access-Control-Allow-Origin', 'http://localhost:9000');
    res.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE');
    res.header('Access-Control-Allow-Headers', 'Content-Type');

    next();
};

// all environments
app.use(express.limit('70mb'));
app.use(express.json({limit: '70mb'}));
app.use(express.urlencoded({limit: '70mb'}));
app.set('port', process.env.PORT || 3000);
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');
app.set('view options', {pretty: config.isProd()});
app.locals.pretty = !config.isProd();
app.use(express.favicon());
app.use(express.logger('dev'));
app.use(express.json());
app.use(express.urlencoded());
app.use(express.methodOverride());
app.use(express.cookieParser('your secret here'));
app.use(express.session());
if (!config.isProd()) {
    app.use(allowCrossDomain);
開發者ID:arein,項目名稱:Mils-Server,代碼行數:31,代碼來源:app.ts

示例5: makeHttpServer

export function makeHttpServer(config: HubConfigInterface): { app: express.Application, server: HubServer, driver: DriverModel } {

  const app: express.Application = express()

  // Handle driver configuration
  let driver: DriverModel

  if (config.driverInstance) {
    driver = config.driverInstance
  } else if (config.driverClass) {
    driver = new config.driverClass(config)
  } else if (config.driver) {
    const driverClass = getDriverClass(config.driver)
    driver = new driverClass(config)
  } else {
    throw new Error('Driver option not configured')
  }
  
  const proofChecker = new ProofChecker(config.proofsConfig)
  const server = new HubServer(driver, proofChecker, config)

  // Instantiate server logging with Winston
  app.use(expressWinston.logger({
    winstonInstance: logger }))

  app.use(cors())

  // sadly, express doesn't like to capture slashes.
  //  but that's okay! regexes solve that problem
  app.post(/^\/store\/([a-zA-Z0-9]+)\/(.+)/, (
    req: express.Request,
    res: express.Response
  ) => {
    let filename = req.params[1]
    if (filename.endsWith('/')){
      filename = filename.substring(0, filename.length - 1)
    }
    const address = req.params[0]

    server.handleRequest(address, filename, req.headers, req)
      .then((publicURL) => {
        writeResponse(res, { publicURL }, 202)
      })
      .catch((err: any) => {
        logger.error(err)
        if (err instanceof errors.ValidationError) {
          writeResponse(res, { message: err.message, error: err.name }, 401)
        } else if (err instanceof errors.AuthTokenTimestampValidationError) {
          writeResponse(res, { message: err.message, error: err.name  }, 401)
        } else if (err instanceof errors.BadPathError) {
          writeResponse(res, { message: err.message, error: err.name  }, 403)
        } else if (err instanceof errors.NotEnoughProofError) {
          writeResponse(res, { message: err.message, error: err.name  }, 402)
        } else if (err instanceof errors.ConflictError) {
          writeResponse(res, { message: err.message, error: err.name  }, 409)
        } else {
          writeResponse(res, { message: 'Server Error' }, 500)
        }
      })
  })

  app.delete(/^\/delete\/([a-zA-Z0-9]+)\/(.+)/, (
    req: express.Request,
    res: express.Response
  ) => {
    let filename = req.params[1]
    if (filename.endsWith('/')){
      filename = filename.substring(0, filename.length - 1)
    }
    const address = req.params[0]

    server.handleDelete(address, filename, req.headers)
      .then(() => {
        res.writeHead(202)
        res.end()
      })
      .catch((err: any) => {
        logger.error(err)
        if (err instanceof errors.ValidationError) {
          writeResponse(res, { message: err.message, error: err.name }, 401)
        } else if (err instanceof errors.AuthTokenTimestampValidationError) {
          writeResponse(res, { message: err.message, error: err.name  }, 401)
        } else if (err instanceof errors.BadPathError) {
          writeResponse(res, { message: err.message, error: err.name  }, 400)
        } else if (err instanceof errors.DoesNotExist) {
          writeResponse(res, { message: err.message, error: err.name  }, 404)
        } else if (err instanceof errors.NotEnoughProofError) {
          writeResponse(res, { message: err.message, error: err.name  }, 402)
        } else {
          writeResponse(res, { message: 'Server Error' }, 500)
        }
      })
  })

  app.post(
    /^\/list-files\/([a-zA-Z0-9]+)\/?/, express.json(),
    (req: express.Request, res: express.Response) => {
      // sanity check...
      if (parseInt(req.headers['content-length']) > 4096) {
        writeResponse(res, { message: 'Invalid JSON: too long'}, 400)
//.........這裏部分代碼省略.........
開發者ID:blockstack,項目名稱:blockstack-registrar,代碼行數:101,代碼來源:http.ts

示例6: constructor

 constructor() {
     this.router = Router()
     // Parse incoming requests with JSON payloads http://expressjs.com/en/api.html
     this.router.use(express.json({ limit: '50mb' }))
 }
開發者ID:OurWorldInData,項目名稱:owid-grapher,代碼行數:5,代碼來源:api.ts


注:本文中的express.json函數示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。