【求助】java通过http请求c#,c#端的代码该如何写?

季末晚风 2018-03-23 09:02:10
现在,因为特殊要求,要实现以下功能。

客户请求服务器,服务器(java)得到响应后,控制wpf(c#)。

因为接触c#时间太短,实在不知道怎么下手,而且很多时候,自己明白要做什么,但就是搜不到对应的资料。

所以求指点。
...全文
581 22 打赏 收藏 转发到动态 举报
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
it_liang 2018-03-23
  • 打赏
  • 举报
回复
引用 12 楼 qq_26954981 的回复:
[quote=引用 10 楼 L_ZhiWei 的回复:] ios 请求 java 服务, java 发送 mq 消息给 wpf
请问有资料或者可供参考的源码吗?对这一块完全没接触过。[/quote] 源码的我这边没有,但是网上例子很多的,你可以查一下RabbitMQ
  • 打赏
  • 举报
回复
或者如楼上所说,通过mq来传递消息,这样java和net就完全没关系了,java只负责发命令,net负责执行命令,而且这样java和net也不需要知道彼此的存在
  • 打赏
  • 举报
回复
你这种直接socket不就行了? 不过java的socket和net能互通吗?不行的话那就用restful api来通知
季末晚风 2018-03-23
  • 打赏
  • 举报
回复
引用 10 楼 L_ZhiWei 的回复:
ios 请求 java 服务, java 发送 mq 消息给 wpf
请问有资料或者可供参考的源码吗?对这一块完全没接触过。
季末晚风 2018-03-23
  • 打赏
  • 举报
回复
引用 9 楼 xomix 的回复:
[quote=引用 7 楼 qq_26954981 的回复:] [quote=引用 5 楼 xomix 的回复:] [quote=引用 4 楼 qq_26954981 的回复:] [quote=引用 3 楼 starfd 的回复:] 控制WPF?怎么个控制法? 难道是代理反射吗?
举个例子,比如说我再ios上往java服务器发送一个指令,指令问播放视频。java服务器将指令转发给wpf,wpf将ios选定的视频播放。[/quote] 这…………通过web服务器…对方怎么跟你说反射命令发射机制的?[/quote] 甲方要求在一个网段里,能通过平板控制电脑里wpf里的操作,比如页面跳转等。并没有做过c#的服务器,所以不是很懂。对于java的我倒是很熟,而且从网上找了很多,都是端口监听的方式,我就在想,能不能通过http协议来搞定,这样我就不需要去搞io了。(主要还是接触太少)[/quote] http协议做的话,服务器主动向客户端发送消息很复杂,如果你是这种需求,利用http建立websocket连接,然后就和一般socket差不多了,互相发消息操作即可,这之后的部分就不用说了吧。[/quote]
引用 9 楼 xomix 的回复:
[quote=引用 7 楼 qq_26954981 的回复:] [quote=引用 5 楼 xomix 的回复:] [quote=引用 4 楼 qq_26954981 的回复:] [quote=引用 3 楼 starfd 的回复:] 控制WPF?怎么个控制法? 难道是代理反射吗?
举个例子,比如说我再ios上往java服务器发送一个指令,指令问播放视频。java服务器将指令转发给wpf,wpf将ios选定的视频播放。[/quote] 这…………通过web服务器…对方怎么跟你说反射命令发射机制的?[/quote] 甲方要求在一个网段里,能通过平板控制电脑里wpf里的操作,比如页面跳转等。并没有做过c#的服务器,所以不是很懂。对于java的我倒是很熟,而且从网上找了很多,都是端口监听的方式,我就在想,能不能通过http协议来搞定,这样我就不需要去搞io了。(主要还是接触太少)[/quote] http协议做的话,服务器主动向客户端发送消息很复杂,如果你是这种需求,利用http建立websocket连接,然后就和一般socket差不多了,互相发消息操作即可,这之后的部分就不用说了吧。[/quote] 存在一个问题,.net websocket需要在iis8以上运行,而且实际上最终的控制接受端理想中应该是个客户端,倘若将其也写成服务端,那每次客户端更新的时候,是不是也要重启服务?再者,内存占有会不会偏高?
  • 打赏
  • 举报
回复
引用 13 楼 starfd 的回复:
你这种直接socket不就行了? 不过java的socket和net能互通吗?不行的话那就用restful api来通知
socket是传输协议,和编程语言没有直接关系,只要按照标准编程,不存在不通的问题。 看楼主的想法不想用socket。
  • 打赏
  • 举报
回复
引用 11 楼 qq_26954981 的回复:
存在一个问题,.net websocket需要在iis8以上运行,而且实际上最终的控制接受端理想中应该是个客户端,倘若将其也写成服务端,那每次客户端更新的时候,是不是也要重启服务?再者,内存占有会不会偏高?
你这三个只要有一个是服务端就好了,其他都是客户端连接进去的,所以问题不大。内存你就三个客户端你编程合理占用量不会很高的。而且有很多人用socket实现了web socket(我不太懂如果这样直接用socket不就好了),可以直接服务端用。
it_liang 2018-03-23
  • 打赏
  • 举报
回复
ios 请求 java 服务, java 发送 mq 消息给 wpf
it_liang 2018-03-23
  • 打赏
  • 举报
回复
RabbitMQ.Client 可以通过 mq 发消息来控制
  • 打赏
  • 举报
回复
引用 7 楼 qq_26954981 的回复:
[quote=引用 5 楼 xomix 的回复:] [quote=引用 4 楼 qq_26954981 的回复:] [quote=引用 3 楼 starfd 的回复:] 控制WPF?怎么个控制法? 难道是代理反射吗?
举个例子,比如说我再ios上往java服务器发送一个指令,指令问播放视频。java服务器将指令转发给wpf,wpf将ios选定的视频播放。[/quote] 这…………通过web服务器…对方怎么跟你说反射命令发射机制的?[/quote] 甲方要求在一个网段里,能通过平板控制电脑里wpf里的操作,比如页面跳转等。并没有做过c#的服务器,所以不是很懂。对于java的我倒是很熟,而且从网上找了很多,都是端口监听的方式,我就在想,能不能通过http协议来搞定,这样我就不需要去搞io了。(主要还是接触太少)[/quote] http协议做的话,服务器主动向客户端发送消息很复杂,如果你是这种需求,利用http建立websocket连接,然后就和一般socket差不多了,互相发消息操作即可,这之后的部分就不用说了吧。
季末晚风 2018-03-23
  • 打赏
  • 举报
回复
引用 5 楼 xomix 的回复:
[quote=引用 4 楼 qq_26954981 的回复:] [quote=引用 3 楼 starfd 的回复:] 控制WPF?怎么个控制法? 难道是代理反射吗?
举个例子,比如说我再ios上往java服务器发送一个指令,指令问播放视频。java服务器将指令转发给wpf,wpf将ios选定的视频播放。[/quote] 这…………通过web服务器…对方怎么跟你说反射命令发射机制的?[/quote] 甲方要求在一个网段里,能通过平板控制电脑里wpf里的操作,比如页面跳转等。并没有做过c#的服务器,所以不是很懂。对于java的我倒是很熟,而且从网上找了很多,都是端口监听的方式,我就在想,能不能通过http协议来搞定,这样我就不需要去搞io了。(主要还是接触太少)
  • 打赏
  • 举报
回复
引用 4 楼 qq_26954981 的回复:
[quote=引用 3 楼 starfd 的回复:] 控制WPF?怎么个控制法? 难道是代理反射吗?
举个例子,比如说我再ios上往java服务器发送一个指令,指令问播放视频。java服务器将指令转发给wpf,wpf将ios选定的视频播放。[/quote] 这…………通过web服务器…对方怎么跟你说反射命令发射机制的?
季末晚风 2018-03-23
  • 打赏
  • 举报
回复
引用 3 楼 starfd 的回复:
控制WPF?怎么个控制法? 难道是代理反射吗?
举个例子,比如说我再ios上往java服务器发送一个指令,指令问播放视频。java服务器将指令转发给wpf,wpf将ios选定的视频播放。
季末晚风 2018-03-23
  • 打赏
  • 举报
回复
引用 1 楼 xomix 的回复:
就是调用接口返回值,根据返回值渲染界面,往死了写就是把能操作的界面都做出来,根据返回值选择对应的界面,活动一些就是动态渲染界面。 按钮绑定事件调用httpclient,从服务端接口申请和返回来确认执行效果。 这是利用http通讯的客户端,服务端用什么写你要做的事情都一样。
大哥,你是让我将所有的wpf页面跳转都写成接口然后用java调用?话说java怎么调这种接口?
  • 打赏
  • 举报
回复
就是调用接口返回值,根据返回值渲染界面,往死了写就是把能操作的界面都做出来,根据返回值选择对应的界面,活动一些就是动态渲染界面。 按钮绑定事件调用httpclient,从服务端接口申请和返回来确认执行效果。 这是利用http通讯的客户端,服务端用什么写你要做的事情都一样。
  • 打赏
  • 举报
回复
控制WPF?怎么个控制法? 难道是代理反射吗?
  • 打赏
  • 举报
回复
哦对忘记一个更快的写法,直接用html封装接口做好网页,然后上个nwjs或者Electron 封装更快。
  • 打赏
  • 举报
回复
引用 19 楼 qq_26954981 的回复:
[quote=引用 16 楼 xomix 的回复:] [quote=引用 13 楼 starfd 的回复:] 你这种直接socket不就行了? 不过java的socket和net能互通吗?不行的话那就用restful api来通知
socket是传输协议,和编程语言没有直接关系,只要按照标准编程,不存在不通的问题。 看楼主的想法不想用socket。[/quote] 请问一下,socket在建立连接的时候,服务器能确定是那个客户端吗?[/quote]
引用 19 楼 qq_26954981 的回复:
[quote=引用 16 楼 xomix 的回复:] [quote=引用 13 楼 starfd 的回复:] 你这种直接socket不就行了? 不过java的socket和net能互通吗?不行的话那就用restful api来通知
socket是传输协议,和编程语言没有直接关系,只要按照标准编程,不存在不通的问题。 看楼主的想法不想用socket。[/quote] 请问一下,socket在建立连接的时候,服务器能确定是那个客户端吗?[/quote] 都带ip的有什么不能确定的,再说了通讯内容是你做的,你控制端通讯内容前面跟个控制端,被控跟个被控,不也就能区分了嘛。
mirrorspace 2018-03-23
  • 打赏
  • 举报
回复
这种应该是双方约定一些"命令"发来发去, java负责发,C#负责执行和反馈.如果是实时的,要用SOCKET.
季末晚风 2018-03-23
  • 打赏
  • 举报
回复
引用 16 楼 xomix 的回复:
[quote=引用 13 楼 starfd 的回复:] 你这种直接socket不就行了? 不过java的socket和net能互通吗?不行的话那就用restful api来通知
socket是传输协议,和编程语言没有直接关系,只要按照标准编程,不存在不通的问题。 看楼主的想法不想用socket。[/quote] 请问一下,socket在建立连接的时候,服务器能确定是那个客户端吗?
加载更多回复(1)

110,561

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧