为什么页面就是不会跳转呢?郁闷中。。。。

wei131420 2006-10-26 11:34:29
我以前在asp 中写以下的内容,页面跳转成功,但是换到用 asp.net 写,就不不会跳转的,为什么呢?请大侠们指教。

============asp 的文件内容=============

str = obj.sendRequest("200001", "2001","https://21.2.12.1/test/merchantpayasp.do")
Dim rsp
rsp = Split(str, ";")
If rsp(0) = 0 Then
'rsp(1) 返回的是 https://www.test.com.hk/test/MerchantPayAsp.do?merchant_id=200001&terminal_id=2001
Response.Redirect(rsp(1)) ’页面跳转成功
Else
Response.Write("Fail, return code=[" & rsp(0) & "]; return msg=[" & rsp(1) & "]")
End If
obj = Nothing


==============Asp.net 文件内容=============

Dim obj As New mpaymer
obj.put_keyfile("d:/mapy/mpay_key/2000012001.key")
Dim Str_message As String
Str_message = obj.sendRequest("200001", "2001","https://21.2.12.1/test/merchantpayasp.do")
Dim rsp
rsp = Split(Str_message, ";")

'Response.Write(replace_html(rsp(1)))
'Response.End()

If rsp(0) = 0 Then
'rsp(1) 返回的是 https://www.test.com.hk/test/MerchantPayAsp.do?merchant_id=200001&terminal_id=2001
Response.Redirect(rsp(1)) ’页面跳转成功,IE 的地址栏显示 http://203.129.1.1/www.www.test.com.hk/test/MerchantPayAsp.do?merchant_id=200001&terminal_id=2001

Else
Response.Write("Fail, return code=[" & rsp(0) & "]; return msg=[" & rsp(1) & "]")
End If

除了页面不能跳转外,还有一个问题就是,本来还有一个参数在asp中显示是 ¤cy=HKD ,但是在asp.net 中就显示 ¤cy=HKD ,这个奇怪的符合 ¤ ,我该怎么转换成原来的 ¤cy=HKD 呢?请帮忙解决,谢谢!
...全文
622 24 打赏 收藏 举报
写回复
24 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
wei131420 2006-10-28
  • 打赏
  • 举报
回复
晕、晕、晕,我做了一下测试,现象如下:

If rab_html.Checked = True Then
Response.Redirect(System.Web.HttpUtility.HtmlEncode(rsp(1))) ‘不能跳转,但是没有 ¤ 这个怪字符
ElseIf rab_red.Checked = True Then
Response.Redirect(rsp(1)) ’不能跳转,有¤ 怪字符
ElseIf rab_urlencode.Checked = True Then
Response.Redirect(System.Web.HttpUtility.UrlEncode(rsp(1))) ‘能跳转,但是跳转的Url一串乱码,导致页面无法显示
Else

End If
lengjianyang 2006-10-27
  • 打赏
  • 举报
回复
说是ASP。NET,怎么用VB的语法,
test33 2006-10-27
  • 打赏
  • 举报
回复
莫明其妙的 问题 很多的· 有时 不要 那么纠缠 就 可以了。
aafshzj 2006-10-27
  • 打赏
  • 举报
回复
另外,你还是把你所有的参数都urlencode一下吧,保留字符太多了。
aafshzj 2006-10-27
  • 打赏
  • 举报
回复
htmlencode之后

¤cy就变成&currency了,你手工改是一样的。

因为¤是HTML保留的。
wei131420 2006-10-27
  • 打赏
  • 举报
回复
第一个问题已经解决了,用的是System.Web.HttpUtility.HtmlEncode(rsp(1))转换了一下,但是第二个问题已经没办法跳转,很奇怪!

我用 response.write(rsp(1)) 的内容是:

https://www.abc.com.hk/mpay/merchantpayasp.do?merchant_id=20000231&terminal_id=2003241&ordernum=&datetime=200610251010&amt=1.00¤cy=HKD&return_url=http://213.149.80.102/testpaymentsrsp.asp&fail_url=http://2213.149.80.102/testpaymentfrsp.asp&customized_data=222&mversion=3.0&hv=eefbd796540d5bb9
掐死温柔 2006-10-27
  • 打赏
  • 举报
回复
你把编码格式定义一下,有可能是你们之前的格式不同引起的.
philoo 2006-10-27
  • 打赏
  • 举报
回复
VB写的代码,不太明白
haok123 2006-10-27
  • 打赏
  • 举报
回复
是丢失配置文件了
要是以前能运行,一直没动的话。
那个文件叫什么我不记得了。
你在别的机器上测试 应该可以用的。
是编译器的问题。

wei131420 2006-10-26
  • 打赏
  • 举报
回复
问题是我换不了,因为是使用别人的服务,参数名字是别人提供的
aafshzj 2006-10-26
  • 打赏
  • 举报
回复
呵呵,不用纠缠这个问题吧,如果总有问题就换个名字好了。这种问题尽快解决是关键。
wei131420 2006-10-26
  • 打赏
  • 举报
回复
我用Response.Write(rsp(1)) 把,rsp(1)给写出来,但是还是包含 ¤ 这个符号,但是我用IE上“查看”-》“源文件”来看 ¤ 就会显示为 ¤ 究竟是怎么回事:

1、我该怎么跳转页面
2、跳转页面时怎么把 ¤ 显示为 ¤ 呢

请各位大侠帮帮忙,急用。。。。
wei131420 2006-10-26
  • 打赏
  • 举报
回复
对,我把¤字符在Html中看是 ¤,但是跳转的问题该怎么解决呢?

现在的情况是这样,我的系统开始运行在 http://202.167.23.22/order.aspx,但是我用Response.Redirect()跳转后,还是在http://202.167.23.22/https://www.test.com.hk/test/MerchantPayAsp.do?merchant_id=200001&terminal_id=2001

在asp 中是能直接跳到 https://www.test.com.hk/test/MerchantPayAsp.do?merchant_id=200001&terminal_id=2001 这里的,而没有 http://202.167.23.22 这段
dolfen 2006-10-26
  • 打赏
  • 举报
回复
可能问题出在replace_html()中或者是哪个地方有字符转换操作, ¤字符在HTML中的字符标识是¤
aafshzj 2006-10-26
  • 打赏
  • 举报
回复
建议你单步调试一下。

“但是在asp.net 中就显示 ¤cy=HKD ”是什么意思?是说在ie里显示不对?还是在代码IDE里?
bogey 2006-10-26
  • 打赏
  • 举报
回复
后一个问题看看页面文件编码呢,用记事本打开另存为时的编码,选个UTF-8试试
myvicy 2006-10-26
  • 打赏
  • 举报
回复
¤cy=HKD 给变量换个名字
跳转用输出js的方法来实现。当然还有别的。
aafshzj 2006-10-26
  • 打赏
  • 举报
回复
1)你在什么地方拼那个参数进去,就在哪里改成这样。肯定就行了。
2)单步检查每一步,看执行路径和变量取值是否符合预期。我估计根本不是不会跳转的问题,在此之前一定已经有问题。
wei131420 2006-10-26
  • 打赏
  • 举报
回复
1、怎样改成&currency ?在那里改?我是要跳转https://www.test.com.hk/test/MerchantPayAsp.do? 用别人的do,所以参数的名字我控制不了。

2、跳转怎么会不成功呢?
eduxh 2006-10-26
  • 打赏
  • 举报
回复
System.Web.HttpUtility.UrlEncode(URL)

连接做一下这样的转换就好了
加载更多回复(4)
相关推荐
发帖
.NET社区

6.1w+

社区成员

.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
帖子事件
创建了帖子
2006-10-26 11:34
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。