diff --git a/docs/shopping.md b/docs/shopping.md
index bba122f81..2f53cc96f 100644
--- a/docs/shopping.md
+++ b/docs/shopping.md
@@ -152,6 +152,12 @@ pageClass: routes
+## 微店
+
+### 商品上新
+
+
+
## 小米
### 小米众筹
diff --git a/lib/router.js b/lib/router.js
index 3bfcdbddf..f5fd037fc 100644
--- a/lib/router.js
+++ b/lib/router.js
@@ -1651,6 +1651,9 @@ router.get('/wechat-open/community/xyx-announce', require('./routes/wechat-open/
router.get('/wechat-open/community/pay-announce', require('./routes/wechat-open/community/pay-announce'));
router.get('/wechat-open/pay/announce', require('./routes/wechat-open/pay/announce'));
+// 微店
+router.get('/weidian/goods/:id', require('./routes/weidian/goods'));
+
// 有赞
router.get('/youzan/goods/:id', require('./routes/youzan/goods'));
diff --git a/lib/routes/weidian/goods.js b/lib/routes/weidian/goods.js
new file mode 100644
index 000000000..7cb501969
--- /dev/null
+++ b/lib/routes/weidian/goods.js
@@ -0,0 +1,32 @@
+const got = require('@/utils/got');
+
+module.exports = async (ctx) => {
+ const id = String(ctx.params.id);
+
+ const link = `https://weidian.com/?userid=${id}`;
+ const api_link = `https://thor.weidian.com/ares/shop.getItemsInShop/1.0?param={"shopId":"${id}","tabId":3,"sortOrder":"desc","limit":20,"page":1}`;
+
+ const response = await got({
+ method: 'get',
+ url: api_link,
+ headers: {
+ Referer: link,
+ },
+ });
+ const goods = response.data.result.shopItems.items;
+
+ const out = goods.map((good) => {
+ const item = {
+ title: good.itemName,
+ description: `价格:${parseInt(good.itemPrice) / 100}
`,
+ link: `https://weidian.com/item.html?itemID=${good.itemId}`,
+ };
+ return item;
+ });
+
+ ctx.state.data = {
+ title: `${id} 商铺上新`,
+ link: link,
+ item: out,
+ };
+};