太诡异了啊!函数a的作用是获取网页源代码,返回类型是String。
网页输出就是一个“500”。
在主程序中,调用a,并用Integer.valueOf来转换a的返回值也就是“500”,try包围,报错,不能讲500转为integer类型。
然后,我把网页那边改成json型,[{code:500}],主程序中,用json来处理它,结果报错,valueoftype java.langstring cannot be converted to jsonarray,这个错误就搞笑了,不能把这个字符串转换为json数组,但是我手动把这个字符串打到主程序里面就可以,从网页中获取过来就不行!!!
怎么回事,我怀疑是不是网页在输出的时候,在前或者后加了什么看不见的东西。。。。
但是我之前那个项目,用这样的方法就没问题,昨天晚上在这里卡了4哥小时,还是没解决
------最佳解决方案--------------------
AssertEquals(a().length == new String("500").length())
我怀疑里面有空格等看不见的字符。
trim一下。
------其他解决方案--------------------
可能是不止一个结果输出,一个是500,另一个可能是空格,所以空格在转换到 时候就报错了,我以前遇到过这种错误的,在xml解析的时候
------其他解决方案--------------------
页面报错了,500表示服务器内部出错,一般是抛出了异常
------其他解决方案--------------------
不不,500是我自己输出的内容~~~
------其他解决方案--------------------
查查是不是字符编码方式问题
------其他解决方案--------------------
那用一个String接收,再将String转换成你想要的类型,多一步操作。
------其他解决方案--------------------
[{"code":"500"}]看看。
------其他解决方案--------------------
数据类型转换后输出一个,确认是json类型再向参数里放
------其他解决方案--------------------
建议楼主将结果用Log输出看一下是不是只有500这个值。
------其他解决方案--------------------
对对,是BOM头