I used to use this API a lot



curl -XPATCH http://127.0.0.1:9080/apisix/admin/upstreams/1/nodes -d 
‘{"127.0.0.1:8083":3}’




I like this API very much, because it is idempotent. We can clearly know that 
the result of nodes is the element I specify and will not be affected by 
history;




This API is also useful for service registration and discovery !



Hope to keep this API


Thank you very much




At 2020-07-13 22:25:43, "YuanSheng Wang" <[email protected]> wrote:
>{
>    desc: xxxx,
>    id: xxxx,
>    nodes: ["xx", "yy", "zz"]
>}
>
>I have one question, if we want to update the `desc` and `nodes`, how to do
>with this case?
>The old API style does not support this way.
>
>Should we support this case? Otherwise, we will never support updating part
>of the data like this.
>
>
>
>On Mon, Jul 13, 2020 at 10:52 AM Ming Wen <[email protected]> wrote:
>
>> Agreed, it's acceptable. We should keep user-friendly.
>>
>> Thanks,
>> Ming Wen, Apache APISIX(incubating) & Apache SkyWalking
>> Twitter: _WenMing
>>
>>
>> Zhiyuan Ju <[email protected]> 于2020年7月13日周一 上午6:42写道:
>>
>> > I think when facing the issue you mentioned, we just
>> >
>> > PATCH {methods: [GET, POST]}
>> >
>> > , and API should just do a “PUT Like” action for the “methods” filed.
>> >
>> > Data with some fixed length “null” is confusing actually.
>> >
>> > Ming Wen <[email protected]>于2020年7月12日 周日下午10:45写道:
>> >
>> > > Whether to roll back has nothing to do with  new or old commit.
>> > >
>> > > The current implementation is not in compliance with the specifications
>> > and
>> > > user perception, there is no need to keep.
>> > >
>> > > APISIX is API gateway, the admin api must follow good design
>> > > specifications.
>> > >
>> > > YuanSheng Wang <[email protected]> 于 2020年7月12日周日 下午10:13写道:
>> > >
>> > > > It is not a good idea to `roll back` the PATCH implementation for
>> admin
>> > > > API.
>> > > >
>> > > > 1. it is an old commit.
>> > > > 2. we can support the sub `PATH` if we need to support it.
>> > > >
>> > > >
>> > > > On Sun, Jul 12, 2020 at 10:07 PM Ming Wen <[email protected]>
>> wrote:
>> > > >
>> > > > > I think the design of admin api should refer to google API design
>> > > doc[1],
>> > > > > and this makes it easy to reach consensus with users.
>> > > > >
>> > > > > [1] https://cloud.google.com/apis/design/standard_methods
>> > > > >
>> > > > > Thanks,
>> > > > > Ming Wen, Apache APISIX(incubating) & Apache SkyWalking
>> > > > > Twitter: _WenMing
>> > > > >
>> > > > >
>> > > > > Ming Wen <[email protected]> 于2020年7月12日周日 下午9:56写道:
>> > > > >
>> > > > > > hello, all,
>> > > > > > A user has reported a issue[1] about PATCH method of admin API.
>> > > > > > I looked at the PR[2] that was causing user confusion, and I
>> think
>> > > the
>> > > > > > user is using it in the right way and our implementation is
>> > > > > inappropriate.
>> > > > > >
>> > > > > > For example, if user want to update the `method` of
>> > > > > `/apisix/admin/routes/1`,
>> > > > > > user need to PATCH with data: `"methods": ["GET", null, null,
>> null,
>> > > > null,
>> > > > > > null, null, null, null]`. For me, I don't know why I need a lot
>> of
>> > > > `null`
>> > > > > > after "GET".
>> > > > > >
>> > > > > > From the user's perspective, the current implementation is not
>> > > > > > appropriate. So I suggest  roll back the current PATCH
>> > > > implementation[2]
>> > > > > > for admin api.
>> > > > > >
>> > > > > > what do you think?
>> > > > > >
>> > > > > > [1] https://github.com/apache/incubator-apisix/issues/1823
>> > > > > > [2] https://github.com/apache/incubator-apisix/pull/1609
>> > > > > > [3]
>> > > > > >
>> > > > >
>> > > >
>> > >
>> >
>> https://github.com/apache/incubator-apisix/pull/1609/files#diff-00625723b6e737f3cdb18af67165b70fR996
>> > > > > >
>> > > > > > Thanks,
>> > > > > > Ming Wen, Apache APISIX(incubating) & Apache SkyWalking
>> > > > > > Twitter: _WenMing
>> > > > > >
>> > > > >
>> > > >
>> > > >
>> > > > --
>> > > >
>> > > > *MembPhis*
>> > > > My GitHub: https://github.com/membphis
>> > > > Apache APISIX: https://github.com/apache/incubator-apisix
>> > > >
>> > >
>> > --
>> > 来自 琚致远
>> >
>>
>
>
>-- 
>
>*MembPhis*
>My GitHub: https://github.com/membphis
>Apache APISIX: https://github.com/apache/incubator-apisix

Reply via email to