SQL执行WebService
程序员文章站
2022-04-28 21:57:59
写了一个钉钉发送消息的类, 要发送用友等审核单据信息, 模式: 钉钉发消息功能在webservice中, 用友消息列表中有新消息时,采用触发器执行webservice. 在测试中 ,功能正常 ,但将在汉字发送到手机端后,显示乱码. 其实这种模式不合理, 这个乱码问题也不解决了.下面是触发器中的代码: ......
写了一个钉钉发送消息的类, 要发送用友等审核单据信息,
模式: 钉钉发消息功能在webservice中, 用友消息列表中有新消息时,采用触发器执行webservice.
在测试中 ,功能正常 ,但将在汉字发送到手机端后,显示乱码.
其实这种模式不合理, 这个乱码问题也不解决了.下面是触发器中的代码:
use [ufdata_001_2016] go /****** object: storedprocedure [dbo].[richen_message_send] script date: 11/30/2018 08:03:51 ******/ set ansi_nulls on go set quoted_identifier on go -- ============================================= -- author: <李孝徽> -- create date: <2018-11-05> -- description: <单据在提交审批时,调用webservice向钉钉发送通知消息 -- 在传入参数时,需要用户id和消息内容 ,最后没使用原因:读数据库发出去消息到钉钉时中文乱码. > -- ============================================= alter procedure [dbo].[richen_message_send] @userid varchar(30), @content varchar(200) as begin set nocount on; declare @serviceurl nvarchar(1000) declare @urladdress nvarchar(100) --webservice地址:以http开头,结尾带斜杠 set @urladdress = 'http://192.168.0.7/richen_ws/dd_ws.asmx/' declare @funname nvarchar(30)--webservice中调用的方法名 set @funname = 'send_dd' --以下参数对应webservice中参数的[参数名] declare @p1 nvarchar(30),@p2 nvarchar(30) set @p1='userid' set @p2='content' --参数赋值 declare @p1_value nvarchar(30),@p2_value nvarchar(200) set @p1_value=@userid set @p2_value=@content set @serviceurl = @urladdress + @funname + '?' + @p1 +'='+ @p1_value +'&' + @p2 + '=' +@p2_value --select @serviceurl --调试时查看拼接结果 ----访问地址执行获取结果 declare @object as int declare @responsetext as nvarchar(4000) exec sp_oacreate 'msxml2.xmlhttp', @object out; exec sp_oamethod @object, 'open', null, 'get',@serviceurl,'false' exec sp_oamethod @object, 'send' exec sp_oamethod @object, 'responsetext', @responsetext output --select @responsetext --调试时查看返回参数 exec sp_oadestroy @object end
上一篇: JS: 模块化
下一篇: maven导出可依赖jar包