【问题标题】:Multiple Calls to WCF service gives Bad Request 400 error in appcelerator多次调用 WCF 服务在 appcelerator 中出现错误请求 400 错误
【发布时间】:2017-03-06 08:17:13
【问题描述】:

我有一个项目,在 iPhone 模拟器中它运行良好。但是,当我开始在 android 设备上进行测试时,它会出现奇怪的行为。它调用第一个 WCF 服务并获取结果,但对于第二个 WCF 服务它给出 400 错误请求。 Web 服务没有问题。

特别是android的代码中的appcelerator设置是否需要进行任何修改?

日志

[INFO] :   Alloy.Globals.switch_url=UserLogin
[ERROR] :  TiHTTPClient: (TiHttpClient-6) [1734,95811] HTTP Error (java.io.IOException): 400 : Bad Request
[ERROR] :  TiHTTPClient: java.io.IOException: 400 : Bad Request
[ERROR] :  TiHTTPClient:    at ti.modules.titanium.network.TiHTTPClient$ClientRunnable.run(TiHTTPClient.java:1216)
[ERROR] :  TiHTTPClient:    at java.lang.Thread.run(Thread.java:856)

【问题讨论】:

  • 检查您的PC ip是否可以访问vai iphone。
  • 它是可访问的,例如:我有 10 个 Web 服务,它们被一一调用。 1. 获取城市工作顺利,2. 获取工作场所提出了错误的请求.. 所以我所做的是我删除了获取城市并第一次调用了获取工作场所,它运行顺利,并且 3. 网络服务给出了错误的请求跨度>
  • @obaid,您确定此日志与您的应用程序代码有关吗,因为我在几乎每个项目中都有类似的日志,而且它与我的应用程序代码无关,而且内部与钛/android 相关这永远不会影响我的应用程序代码和任何东西。您的应用是否无法正常运行,或者仅使用上述日志即可正常运行?
  • 第二次调用 web 服务时会出现上述日志。我的应用程序正在运行,但对 Web 服务的第二次调用不起作用。

标签: android wcf appcelerator


【解决方案1】:

这里是解决方案。您可能只使用一个全局 xhr 对象

Alloy.Globals.xhr=Titanium.Network.createHTTPClient({async:true});

在 Android 中,我发现对于每个 WCF/服务请求,您都需要初始化一个新的 xhr 对象并发送请求。这将顺利进行。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-06-22
    • 2012-04-27
    • 2015-11-24
    • 2011-08-25
    • 2011-09-29
    • 2014-01-11
    • 1970-01-01
    相关资源
    最近更新 更多