@cuvva/postcodesio-client

中文文档
0.3.6发布于 2021/07/08MITCommonJS近 30 天下载 2455

摘要访问 Postcode.io API

中文使用文档
文档目录17 节
  1. 安装
  2. 使用量
  3. 承诺
  4. 方法
  5. 查询
  6. 近坐标
  7. 贴近邮政编码
  8. 反转地理代码
  9. 校验
  10. 随机
  11. 类型
  12. 邮政编码
  13. 代码
  14. 测试
  15. 支助
  16. 作者数
  17. 许可证

邮政编码.io 客户端

摘要访问 postcodes.io API (英语).

NPM Version Build Status Coverage Status

var PostcodesIO = require('postcodesio-client');
var postcodes = new PostcodesIO();

postcodes.lookup('EC1V 9LB').then(postcode => {
    console.log(postcode);

    // {
    //   "postcode": "EC1V 9LB",
    //   "admin_district": "Islington",
    //   "longitude": -0.091247681768113,
    //   "latitude": 51.5278436902703,
    //   "region": "London",
    //   ...
    // }
});

安装

$ npm install postcodesio-client

使用量

创建客户端实例, 如果您愿意提供选项 :

var PostcodesIO = require('postcodesio-client');

var postcodes = new PostcodesIO('https://api.postcodes.io', {
    headers: { 'User-Agent': 'MyAwesomeApp/1.0.0' } // default {} - extra headers
});

使用承诺提出请求:

postcodes
    .lookup('EC1V 9LB')
    .then(function (postcode) {
        console.log(postcode);
    }, function (error) {
        console.log('oh no, it failed ;_;');
    });

未发现API的答复(404个)不被认为是错误. 相反 输出会是 null。 。 。 .

postcodes.lookup('F4K3AA').then(postcode => {
    console.log(postcode);
    // null
});

只有承诺(承诺/A+支持 - 回调 没有。 以下两节具体说明如何实施承诺 参见下文.

承诺

postcodes
    .method(parameters...)
    .then(function (outputs...) {

    }, function (error) {

    });
  • method - 你要使用的方法 - 什么
  • parameters - 该方法特有的任何论据(见 方法(中文(简体) )
  • error - 实例 Error
  • outputs - 该方法的任何产出(见 方法(中文(简体) )

两者 parameters 财务报告和审定财务报表 outputs 可以指: 零,一,或许多论据. 这些是 为每种方法指定.

方法

查询

获取大量数据用于邮编码或出码.

postcodes.lookup(code)

参数:

  • code - 字符串 - 要取回的邮编码或出码

产出:

这也可被明确称为: postcodes.lookupPostcode(postcode) 或者说 postcodes.lookupOutcode(outcode)。 。 。 .

近坐标

查找最接近坐标的邮政编码.

postcodes.near(latitude, longitude)

这也可被明确称为: postcodes.nearCoordinate(latitude, longitude, options)。 。 。 .

参数:

  • latitude 坐标的纬度
  • longitude 坐标的经度
  • options - 对象 - 可选的,只有明确调用时可用

产出:

贴近邮政编码

查找最接近另一个邮编的邮编.

警告:结果可能包括原邮编码.

postcodes.near(postcode)

这也可被明确称为: postcodes.nearPostcode(postcode)。 。 。 .

参数:

  • postcode 字符串 - 要搜索的邮编

产出:

反转地理代码

找到最接近坐标的单一邮编 .

postcodes.reverseGeocode(latitude, longitude)

参数:

  • latitude 坐标的纬度
  • longitude 坐标的经度

产出:

校验

验证邮编是否存在 。 (意思是它在官方的皇家邮件中) 邮政编码地址文件).

postcodes.validate(postcode)

参数:

  • postcode 字符串 - 要检索的邮编

产出:

  • exists - 布尔 - 表示邮政编码的存在

随机

获取随机邮编 。 不太确定你为什么要这么做 但这里 这是...

postcodes.random()

产出:

类型

邮政编码

示例

{
    "postcode": "EC1V 9LB",
    "quality": 1,
    "eastings": 532506,
    "northings": 182719,
    "country": "England",
    "nhs_ha": "London",
    "admin_county": null,
    "admin_district": "Islington",
    "admin_ward": "Bunhill",
    "longitude": -0.091247681768113,
    "latitude": 51.5278436902703,
    "parliamentary_constituency": "Islington South and Finsbury",
    "european_electoral_region": "London",
    "primary_care_trust": "Islington",
    "region": "London",
    "parish": null,
    "lsoa": "Islington 023A",
    "msoa": "Islington 023",
    "nuts": null,
    "incode": "9LB",
    "outcode": "EC1V",
    "ccg": "NHS Islington"
}

代码

示例

{
    "outcode": "EC1V",
    "longitude": -0.0981811622126924,
    "latitude": 51.5266761246198,
    "northings": 182576,
    "eastings": 532028,
    "admin_district": [
        "Hackney",
        "Islington"
    ],
    "parish": [
        "Hackney, unparished area",
        "Islington, unparished area"
    ],
    "admin_county": [],
    "admin_ward": [
        "Bunhill",
        "Hoxton West",
        "Clerkenwell",
        "Hoxton East & Shoreditch",
        "St Peter's"
    ],
    "country": [
        "England"
    ]
}

测试

首先安装开发依赖 :

$ npm install

然后进行测试:

$ npm test

支助

请打开此寄存器 .

作者数

许可证

麻省理工学院执照 - 看 自由主义 文件

版本与发布记录

@cuvva/postcodesio-client 共发布 2 个版本,首次发布于 2021/07/06;过去 12 个月发布了 0 个版本。

版本发布日期距今
0.3.6latest2021/07/085 年前
0.3.52021/07/065 年前

关于 @cuvva/postcodesio-client 的常见问题

@cuvva/postcodesio-client 是什么?

摘要访问 Postcode.io API

如何安装 @cuvva/postcodesio-client?

在项目目录运行 npm install @cuvva/postcodesio-client,或使用 pnpm add / yarn add / bun add。

@cuvva/postcodesio-client 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/cuvva__postcodesio-client 是否存在。

@cuvva/postcodesio-client 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@cuvva/postcodesio-client 可以商用吗?

@cuvva/postcodesio-client 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@cuvva/postcodesio-client 的下载量有多少?

根据 npm 官方下载统计,@cuvva/postcodesio-client 在 2026/10/11 – 2026/11/09 这 30 天内被下载 2,455 次,日均约 82 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@cuvva/postcodesio-client 还在维护吗?

最新版本 0.3.6 发布于 2021/07/08(5 年前);至今共发布 2 个版本,其中过去 12 个月发布了 0 个;首次发布于 2021/07/06。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。