posturl 的参数

lr_ping 2014-07-02 01:57:28
我用posturl向服务器提交数据,反回值中有乱码,是不是我的参数不对,用geturl提交时反回值是正确的,但传到服务器里utf8编码的汉字都是乱码,难到pb上传数据时会对数据重新编码吗?我想再用posturl试试
我的代码如下,
//blob lblb_args
//long ll_length
//string ls_headers
//
//lblb_args = blob( "serviceName=insert&objectApiName=sgdbase&data="+ls_data+"&binding="+ls_binding)
//messagebox('',string(lblb_args))
//ll_length = Len(lblb_args)
//ls_headers = "Content-Length:" + String(ll_length)
//li_ret =ln_inet.posturl("http://app3.cloudcc.com/distributor.action?",lblb_args,ls_headers,ln_iinster)
...全文
184 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
A啦Dbit 2014-07-02
  • 打赏
  • 举报
回复
楼主-->版主 (改正一下)
引用 4 楼 xiajinxian 的回复:
楼主的方法可以的(改了一下下),写入文件后再读取到blob里应该就是utf8了
integer  li_rtn  
  destroy  ole_ADOStream 
A啦Dbit 2014-07-02
  • 打赏
  • 举报
回复
楼主的方法可以的(改了一下下),写入文件后再读取到blob里应该就是utf8了
integer  li_rtn  
  OLEObject  ole_ADOStream  
  ole_ADOStream  =  CREATE  OLEObject  
  li_rtn  =  ole_ADOStream.ConnectToNewObject("ADODB.Stream")  
  ole_ADOStream.Type  =  1  //二进制数据Binary  
  ole_ADOStream.Mode  =3  //具有读/写权限  
  ole_ADOStream.Open()  
  //ole_ADOStream.LoadFromFile("c:\1.txt")  
  ole_ADOStream.Position  =  0  //Position为0才能设置Charset  
  ole_ADOStream.Type  =  2  //文本数据  
  ole_ADOStream.Charset  =  "UTF-8"  
  ole_ADOStream.WriteText('中国')
  ole_ADOStream.SaveToFile("c:\2.txt",2)  
  ole_ADOStream.Close()  
  destroy  ole_ADOStream 
lr_ping 2014-07-02
  • 打赏
  • 举报
回复
我用的PB9,现在来不及升级,还有什么办法吗?
A啦Dbit 2014-07-02
  • 打赏
  • 举报
回复
PB10 以后,blob函数有两个参数 第二个可以写成encodingutf8!
lr_ping 2014-07-02
  • 打赏
  • 举报
回复
如果不用posturt或geturl还有其它方法通过用http上传数据吗?

1,075

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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