今天遇一外包 把我气笑了 跟我一本正经的说 前端只用把页面做好 假数据做好 就好了 其他的调试接口什么的都应该后端来做???? 现在后端都要自己写 js 对接自己的 api 了吗? 是我太年轻了吗???
1
orangeface OP 求大神科普一波 我要拿去撕逼!
|
2
Yoock 2018-12-23 14:57:45 +08:00
后端自己把接口测一遍还是需要的吧?
|
3
dongisking 2018-12-23 15:01:08 +08:00 via Android
@Yoock lz 的意思是 js 网络请求的代码也要后端写吧
|
4
Rekkles 2018-12-23 15:01:35 +08:00
后端写好 mock 数据+注释 提供数据完事
|
5
orangeface OP @dongisking 是这样的 他们一而再再而三的强调前端只用出页面
|
6
orangeface OP @Yoock 我接口都是通过测试的 并且有 swagger 文档
|
7
orangeface OP @Rekkles 是呀 我都造好了数据 他们却跟我说 因为跨域 访问不通 对接接口是你们后端的事儿 我们前端只用做页面
|
8
orangeface OP 更牛逼了的来了 不知道在哪拉了一个人 我不会发图 只能复制了:
调用接口只是 js,一般都是后端写的 前端是出 CSS 样式的 |
9
orangeface OP @orangeface 问号脸 真的是我菜吗??我应该去恶补 js 吗????
|
10
orangeface OP 牛逼外包一本正经的解释:
可以这么说,如果前端给你调用接口用时可能 3-4 天,中间肯定会出现各种问题,(如果后端接口提供的早,前端可以根据后端接口去写,如果提供的晚,后端自己对接是最合适的,毕竟自己写的接口自己调配是最快的)如果跨域,还需要时间去搭建虚拟服务器之类的,因为服务器并不相同,所以你没办法短时间内快速对接,这也是我之前为什么一直说后端让我们对接是给我们挖坑的原因;如果后端自己对接,后端牛逼的话最快可能一两天就搞定,1 服务器是不用跨域的,2 自己写的代码自己可以去调配,这就是技术,不懂的人可以了解下,并没有胡编乱造瞎忽悠你们,该我们做的我们肯定是尽心尽力的做好,不该我们背的锅我们肯定不会去背 |
11
orangeface OP 在更:
js 就跟 java 后台一样的,是后端的必修课 |
12
naturedy 2018-12-23 15:28:16 +08:00 via iPhone
当然不是。你只要写好接口,测试用例跑一下,尽量保证接口不要出太多错,提供一个 api 文档就完事儿了。现在很多公司会把前端分为写 js 的和切图的,你可能遇到了后者,就是只负责写 css,出页面
|
13
anmie 2018-12-23 15:30:47 +08:00
看技术架构啊。前后端不分离的项目不就是这样吗,前端提供页面,后台拿到之后直接模版引擎渲染,哪有什么 js 请求接口的操作。
要是前后端分离的项目 就是前端来请求数据进行展示了,后台的只提供接口 按照你的描述,估计他们认为这是一个前后端不分离的项目,所以他们说的没错。 |
14
GuryYu 2018-12-23 15:31:36 +08:00
前后端不分离的时候一般是前端只写静态页面,然后由后台来对接数据和实现交互。
前后端分离的时候一般是后台只提供接口和文档,然后由前端来对接数据和实现交互。 跨域问题一般是由后端处理的,目前前后端分离开发是主流,但要看楼主的技术架构和当时的约定。 |
15
orangeface OP @anmie 但实际上这是一个前后端分离的项目呀
|
16
katsusan 2018-12-23 15:34:21 +08:00 1
对方是外包你是甲方吗,那直接怼他啊,反正甲方是爸爸:doge:,另外对牛弹琴是没用的,用一句通俗的话说他会把你拉到和他同一个智商水平线,然后用他丰富的经验打败你。
|
17
orangeface OP |
18
orangeface OP @katsusan 他们人多啊 我们这边就我一个懂技术 而且我是后端的 对前端也不是特别熟悉
|
19
hlwjia 2018-12-23 16:29:24 +08:00
这些不是事前先沟通的吗?
|
20
0ZXYDDu796nVCFxq 2018-12-23 16:50:05 +08:00 via Android
也就 Web 开发喜欢撕这些东西
|
21
ByZHkc3 2018-12-23 17:06:19 +08:00 via Android
这种直接往死里怼,你接口自测完成写好文档就扔给他们自己联调,前端是涉及到流程交互的,要你写 js 你就该让他们滚蛋
|
22
sunjiayao 2018-12-23 17:16:41 +08:00
前期先出接口文档,一切按照文档进行开发。开发时假数据前端自己解决,你指定好跨域省的在这上面扯皮。不行就把这个帖子发给他
|
23
summermao 2018-12-23 17:20:16 +08:00
垃圾外包让他滚
|
24
summermao 2018-12-23 17:21:19 +08:00
你就问他能不能做
|
25
also24 2018-12-23 17:24:57 +08:00 1
一开始以为是 “模板” 带来的后遗症,在后端模板嵌前端代码的情况下,确实有可能混淆这部分职责。
结果仔细看下来发是个前后端分离的项目…… 真的从分工精细化角度来说,前端确实有可能细分为: * 专门实现页面,写样式的前端 * 专门对接接口,写 JS 写页面逻辑的前端 但无论如何,写 JS 怎么都不应该是后端的 “职责” 的~ 后端对前端页面的触及,最多也就到 “模板” 这个层级了。 至于对方所使用的理由: 如果后端自己对接,后端牛逼的话最快可能一两天就搞定,1 服务器是不用跨域的,2 自己写的代码自己可以去调配 改一下好像也没什么问题嘛: 如果前端自己写后端,前端牛逼的话最快可能一两天就搞定,1 服务器是不用跨域的,2 自己写的代码自己可以去调配 |
26
V2exUser 2018-12-23 19:58:40 +08:00
接口联调是双方的工作,后端给文档,主动权在前端手里,如果前端联调有问题并指向接口,告知后端一起处理。
|
27
mcfog 2018-12-23 20:06:34 +08:00 via Android
搞不定外包就去搞定给外包开工资的人
|
28
zxcvsh 2018-12-23 20:27:52 +08:00 via iPhone
js 前段写更好吧,很多东西影响布局
|
29
weakish 2018-12-23 20:53:12 +08:00
@orangeface 跨域设置好 http header 就可以,实在不行浏览器还可以通过装插件或者命令行参数来绕过。API 接口定了,前端按文档开发就是了,如果需要调试,后端你给它实现一个 mock api 就可以。
「 js 就跟 java 后台一样的,是后端的必修课」如果不能换外包的话,你可能真的需要学下 js,顺便再学下 css,然后全部自己写。(和这样的外包合作很可能反复扯皮,最后浪费的时间可能超过你学习和自己写前端的时间…… |
30
Vegetable 2018-12-23 20:53:19 +08:00 via Android
谁是甲方啊?这样不能给钱的啊
|
31
weakish 2018-12-23 21:03:59 +08:00
「所以你没办法短时间内快速对接,这也是我之前为什么一直说后端让我们对接是给我们挖坑的原因」
嗯,你也可以说:Node.js 是前端的必修课,接口( API Gateway )应该由前端来写,方便调试,如果需要修改 API,也更方便。然后前端只需事先告诉后端需要实现什么微服务,然后定好微服务的接口(微服务因为功能单一,所以接口变动的可能性相对来说很小,而且调试方便——微服务没实现前,前端可以 mock 实现,等微服务实现了再替换)。这样前端和后端的开发基本上可以独立进行,按照各自的节奏同时开发,可以做到超快速对接。所以我觉得 API Gateway 让后端实现是给双方挖坑。 |
32
otakustay 2018-12-23 21:32:38 +08:00
如果只是 mock 测试,而没有写后端接口调用的 JS 代码,这是前端的问题
但是如果这样,前端怎么会反馈“因为跨域访问不通”呢,难道是完全没有试过的情况下撒谎说的吗 如果真的是因为跨域访问而导致没有办法对接上,那么实现相关的跨域配置并让前端可以访问,这个算是后端的职责我认为没有问题 |
33
simonguo 2018-12-23 21:57:32 +08:00
前后端分离职责划分非常简单:
1.后端管理好 API, 做好每一个 API 的单元测试,理论上只需要给前端一份完整的 API 文档就行了。 2.前端管理所有和 UI 相关的逻辑,包括路由管理,数据对接。 普通流程: 1.产品经理分解需要。 2.设计: - 2.1 前端架构设计 - 2.2 后端架构设计, 以及 API 设计 (设计过程中需要及时讨论,同时与前端,和测试进行 review ) - 2.3 测试,测试用例设计 - 2.4 运维,准备服务资源 3.开发,前端开发,后端开发 4.提交测试,bug 修复 5.运维准备上线。 备注:一般在 API 设计的过程中会使用一些工具,在 API 设计完成以后,对应的 Mock Server 的数据也就生成好了,这样前端和后端能够很好的并行开发。 |
34
tanpengsccd 2018-12-23 23:00:46 +08:00 via iPhone
我认为后端只要给 完整 API 文档就行了了。是 swagger 或类似的就更好了。但是感觉后端会用 swagger 的人好少啊,和没文档的后端对接真蛋疼
|
35
initsa 2018-12-24 09:13:17 +08:00 via Android
……我们数据筛选分页啥的,都是前端来做,后端只给数据,至于跨域,没后端配合估计也不好饶过去,写接口的时候应该规定好
|
36
vazo 2018-12-24 11:25:16 +08:00
吵什么吵,谁出钱听谁的
|
37
Junjunya 2018-12-25 14:11:44 +08:00
3 年前的前端就是只负责 html+css 写好页面,然后剩下的工作都是后端来做了包括 js,偶尔还会改点 css,所以那会前端被谑称为切图仔。后端相当于是半个 “全干”程序员。
现在的前后端分离之后,常见的是后端提供只接口,保证接口的稳定性,然后前端根据接口自己写页面负责 html+css+js 至于楼主现在遇到的情况。其实我觉得问题不大,就是个分工的问题。很多外包因为程序简单,自己一个人前后端通吃写起来很快,但是又不想写 html+css 这种“脏活,累活”就只让前端出页面,然后后端来套页面。 还有很多小城市里的公司还是这种模式 |
38
orangeface OP 感谢各位大神 学到老活到老 那天真的是气炸了 对面一直在各种理由甩锅 就是因为时间紧迫来不及对接,最后我找我朋友熬到 2 点对接完了 我是很愿意学习新东西的 我只是气这些外包为了甩锅不择手段 最后还喷我说我一晚上多出来 20 多个接口全部是假的 不可能写的出来 还要让我给他们看代码。当时真的气笑了 不过真的是吃一堑长一智 立贴长记性
|