V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  siteshen  ›  全部回复第 5 页 / 共 22 页
回复总数  435
1  2  3  4  5  6  7  8  9  10 ... 22  
2020-06-04 14:49:43 +08:00
回复了 xueyoucai 创建的主题 Python Python 接口接口
1. 找个 Flask 的入门教程,学习怎么构建简单的 API ;
2. 重构你的脚本,对外提供一个 update_data() 之类的函数;
3. 整合 Flask 和你的脚本。

最终能得到类似下面的代码(现场手写的,请自辨):


from your_script import update_data

app = Flask()

@app.route("/api/update-data")
def update_data_handler():
kwargs = app.get_request_args() # 需要去查 flask 怎么获取参数
update_data(user_id=kwargs['user'], post_ids=kwargs['post_ids'])
return {"success": true}


if __name__ == "__main__":
app.run()
2020-06-01 14:17:26 +08:00
回复了 qqqccc 创建的主题 程序员 fastjson 又爆 bug 了!快来看看是否受影响
@yuzo555 Go:我怀疑你在说我,但是我没有证据。
2020-05-31 20:27:45 +08:00
回复了 dangyuluo 创建的主题 程序员 成都的 V 友,下个月中过路过,请你吃饭,我们聊一聊
@delectate 聊麻将 AI 吗?
2020-05-27 09:30:50 +08:00
回复了 subpo 创建的主题 奇思妙想 回到乡下,过上自给自足的生活有没有可行性?
我很久之前就想过,但有一个很大的问题,我担心我种地养不活我自己。
2020-05-18 16:29:09 +08:00
回复了 Wenco 创建的主题 Go 编程语言 api 数据返回过滤不需要的字段
@Wenco NewUserResponse 是其他语言中的构造函数,这样对生成的 UserResponse 可控(甚至 UserResponse 可以设计为 private 的 userResponse )。

UserResponse 也是可以复用的,下面这个例子就会复用 BasicUser 。
用户列表可能就只需要 BasicUser (用户名、头像),
查看用户详情时可能需要 UserDetail (BasicUser + 粉丝数、文章数),
查看自己的详情时可能需要 Me ( UserDetail + 收入 + 草稿箱中的文章数)。


struct BasicUser {
username string
avatar url
}

// API readUser
struct UserDetail {
UserResponse
bio string
location string
n_follower int
n_following int
n_posts int
}

// 用户查看自己信息的时
struct Me {
UserDetail
n_fav_posts int
total_cost double
total_income double
n_draft_posts int
}

// API listUser
struct UserList {
users BasicUser[]
}
2020-05-18 09:49:37 +08:00
回复了 Wenco 创建的主题 Go 编程语言 api 数据返回过滤不需要的字段
@siteshen 简单的说,就是你们少了一层抽象:API response 。加上之后 API 返回字段就只和 API response 层相关,不需要和 model 、logic 层耦合(甚至 model 用 ORM 实现、甚至存储换成 redis/mongodb 也不会影响前端)。
2020-05-18 09:45:34 +08:00
回复了 Wenco 创建的主题 Go 编程语言 api 数据返回过滤不需要的字段
// models/user.go
struct User {
username string
password stirng
age int
...
}

// responses/user.go
struct UserResponse {
username string
age int
...
}

func NewUserResponse(user *User) {
...
}

// handlers/user.go
funct ReadUserHandler(req, res) {
user = models.ReadUserById(req.UserId)
return response.NewUserResponse(user)
}
建议明确前后端的界限,前端只是把后端当个黑盒子使用,做前端的只能「建议」后端怎么做(反之亦然)。

前端遇到问题,只需要告诉后端某个请求有问题,并提供 curl 命令、预期结果和实际结果。

至于后端是用断点、log 、买个啄木鸟还是拍电脑,都与前端无关。
2020-05-13 09:26:40 +08:00
回复了 murmur 创建的主题 程序员 日常开吹:竹板这么一打,今天夸一夸,为什么我喜欢 Vue
没人关心这贴子和「竹板」有什么关系吗?
2020-05-11 15:27:48 +08:00
回复了 ybw 创建的主题 程序员 写代码最大的痛苦, 在于理解别人的代码
理解别人的代码确实很困难,因为这不止取决于看代码的人,还取决于写代码的人。

但要做到以后能理解自己的代码还是能做到的:
1. 尽量用最高的标准要求自己的代码;
2. 不那么明显的工具函数会有简单的测试;
3. 不得不 HACK 的代码会用注释写明原因。

不夸张的说,我现在还能较容易地看懂我三年前写的代码。
2020-04-30 17:58:40 +08:00
回复了 RobinCheng 创建的主题 iPhone iPhone 强制 6 位密码,经常输完密码发现少 1 位。。。
俺也一样
2020-04-26 12:14:41 +08:00
回复了 srs1995 创建的主题 Java 野路子 Java
代码没什么问题,不过倒是 signature 的算法和一般的不一样。

一般是这种:
输入是: {"a": 123, "c": 292, "b": 299}
签名的字符串是:a=123&b=299&c=292

很少会要求 JSON 的 key 是「有序」的。这通常意味着要么依赖内置的排序(不同语言的排序方式可能不一样),要么手动对 JSON 的 key 排序(麻烦,某些语言甚至只能用拼接字符串的方式实现所谓的 JSON encode )。
2020-04-23 09:15:25 +08:00
回复了 charlieputon 创建的主题 生活 最近感觉很不快乐,不知道该怎么办。
愁生于郁,解愁的方法在泄;郁由于静止,求泄的方法在动。
多打网球,多弹钢琴。实在不喜欢就谈谈笑笑,跑跑跳跳!
我谈不上热衷环保,也没什么想法, 不过有让世界变得更美好的愿景。
如果你们有些想法 /项目,我愿意作为参与者,提供一些技术上的支持。
2020-04-17 11:53:31 +08:00
回复了 xhf1024 创建的主题 健康 大家有什么办法早睡嘛?
和有话语权的同性长辈睡一张床。
2020-03-29 01:02:37 +08:00
回复了 hlwjia 创建的主题 macOS 用 Mac 的小伙伴们,看看你们这个目录多大?
602M
2020-03-16 12:36:06 +08:00
回复了 pmyile 创建的主题 互联网 QQ 现在那么难用 目标用户是什么群体呢? 是否已经迷失
@belin520 关键是没办法关闭这类信息的推送,只好关闭支付宝所有的推送。
2020-03-16 12:12:19 +08:00
回复了 onice 创建的主题 Python Python 有必要自己写类型判断吗?
@janxin 可能真的有这种最佳实践,毕竟动态类型语言的优势在于 duck type,即使要判断也应该是判断参数是否实现对应的接口,而不是要求参数是指定的类型。
1  2  3  4  5  6  7  8  9  10 ... 22  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2768 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 37ms · UTC 15:39 · PVG 23:39 · LAX 07:39 · JFK 10:39
Developed with CodeLauncher
♥ Do have faith in what you're doing.