npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

mock-endpoints-factory

v1.0.0

Published

模拟数据的api接口工厂

Downloads

2

Readme

初衷

我们在做前端页面时,有时需要调用接口,但是后端开发人员有可能还没有完成,这时我们需要一个模拟数据返回的服务器。若是单纯地使用mockjs来模拟数据,无法做到完全的http请求模拟,若是新建一个服务器,则前端需要处理跨域问题。
在这里,mock-endpoints-factory集成了mockjs,为用户提供了一个简单的api,可以迅速创建对应url的http接口,可以方便的集成进webpack中。

准备

我们以express为例来新建一个mock服务器。

安装

打开命令行运行如下命令:
    npm i -D mockjs express mock-endpoints-factory

配置mock数据

// 必须是一个数组
const configList = [
    {
        url: '/mock/test1', // 必需参数。
        data: { // 返回数据格式
            "name": "@cname",
            "age|1-100": 22
        },
        method: 'get' // 必需参数。http请求方法
    },
    {
        url: '/mock/test2',
        data: 'cannot reached',
        statusCode: 404, // 非必需参数。http状态码
        method: 'post'
    },
    {
        url: '/mock/test3/:id', // 带参数的路由
        data: (req, res, Mock) => { // 返回数据格式,也可以是函数。
            const id = req.params.id
            res.send({ // 调用res.send方法返回数据到客户端
                id,
                name: Mock.mock('@cname'),
                age: parseInt(Math.random() * 80) + 20
            })
        },
        method: 'get'
    },
]

在webpack-dev-server中集成

我们可以在webpack-dev-server加入这样的配置:

const createEndPoint = require('mock-endpoints-factory')

module.exports = {
    ...
    before(app){
        createEndPoint(app, configList)
    }
    ...
}

创建mock服务器

创建服务器

const express = require('express')
const createEndPoint = require('mock-endpoints-factory')
const app = express()
const port = 3000

createEndPoint(app, configList)

app.listen(port, () => {
  console.log(`Example app listening at http://localhost:${port}`)
})