parse.com geoPointForCurrentLocationInBackground是否计为API请求

时间:2015-02-03 02:24:13

标签: ios objective-c swift parse-platform

有没有人知道PFGeoPoint.geoPointForCurrentLocationInBackground的实现是否算作解析时的API请求,即是否会计入我每秒30个请求的限制?通过CLLocationManager看到找到iPhone的位置不会使用任何网络请求,我认为它没有。

2 个答案:

答案 0 :(得分:1)

实际上,你使用Parse做的任何事情都会计入您的API请求限制。看看他们作为一个企业是什么,他们收集API请求的收入。所以显然你做得越多越好。如果您看一下他们对API请求构成的定义,您会看到一个非常模糊但明确的答案。 see here具体是第一个可供参考的问题。

  

只要您使用其中一个Parse SDK或REST API代表您的应用对Parse进行网络调用,它就会被视为API请求。

所以看看你的代码,你在后台调用的东西,所以是的,如果你是从Parse中获取它,那么然而在这种情况下它正在使用你提到的设备位置你的问题。 CLLocationManager 委托提供新的坐标,所有geoPointForCurrentLocationInBackground都会封装它。 此外,为了回答您的评论,查询也属于此类。

作为一个安全的选择,假设您的所有任务都在使用API​​请求,这将创建更好的编码习惯和更智能的结构大纲。

我认为唯一没有使用的是缓存信息,这是有道理的,因为您最初已经使用初始查询检索了信息,因此无需使用其他API请求来获取与缓存相同的数据。

旁注:这甚至适用于新的本地数据存储,即使它在技术上不在线,它也会更新您进行本地数据存储查询/保存的后端。


参考https://parse.com/docs/ios/api/Classes/PFGeoPoint.html#//api/name/geoPointForCurrentLocationInBackground

答案 1 :(得分:1)

我已经通过将以下代码放入没有其他解析api请求的视图控制器

来测试了这一点
PFGeoPoint.geoPointForCurrentLocationInBackground { (g: PFGeoPoint!, e: NSError!) -> Void in
        PFGeoPoint.geoPointForCurrentLocationInBackground { (g: PFGeoPoint!, e: NSError!) -> Void in
            PFGeoPoint.geoPointForCurrentLocationInBackground { (g: PFGeoPoint!, e: NSError!) -> Void in
                PFGeoPoint.geoPointForCurrentLocationInBackground { (g: PFGeoPoint!, e: NSError!) -> Void in
                    PFGeoPoint.geoPointForCurrentLocationInBackground { (g: PFGeoPoint!, e: NSError!) -> Void in
                        PFGeoPoint.geoPointForCurrentLocationInBackground { (g: PFGeoPoint!, e: NSError!) -> Void in
                            PFGeoPoint.geoPointForCurrentLocationInBackground { (g: PFGeoPoint!, e: NSError!) -> Void in
                                println(g)
                            }
                        }
                    }
                }
            }
        }
    }

此应用的分析页面上的效果标签上没有任何内容,所以我建议这是一个免费的" API。我已向他们发送了一封电子邮件以确认