标签: foursquare

流行的应用程序如何验证从移动应用程序到其服务器的用户请求?

假设我有一个连接到.Net API的Android应用程序,用于接收/设置数据.我所遇到的困惑是关于如何在每次向API发出请求时第一次注册/登录用户并对其进行身份验证.

  • 如果我只使用基于用户名/密码的身份验证,他们将不够安全?
  • 当然,出于安全原因,我无法在设备中保存该用户名/密码?
  • 我是否应该在注册时为每个用户发出GUID,将其保存在他们的设备中并在API请求期间每次检索?

还有哪些其他模式可用,哪些模式最有效和最安全,我只需要一个流程.有人能告诉我Facebook,FourSquare或Twitter等着名的Android应用程序使用什么方法来验证从他们的移动应用程序到他们的服务器的每个请求?

如果这不是一些公开信息,请提前抱歉.

authentication android facebook foursquare

109
推荐指数
4
解决办法
7万
查看次数

用于场地用户图像错误的Foursquare API

Foursquare API已将用户的照片标记划分为前缀和后缀.但是,如果我合并它们以形成完整的图像URL并将其粘贴到我的浏览器中,则会给出错误,指出图像无法显示,因为它包含错误.是因为服务器暂时不可用还是其他什么?

我正在使用场地细节的API.

我得到了这样的数据

user: {

id: "26534686"
firstName: "Bobbi"
lastName: "E."
photo: {
    prefix: "https://irs3.4sqi.net/img/user/"
    suffix: "/K4VCI4MXHWFUGXOF.jpg"
}
}
visibility: "public" 
Run Code Online (Sandbox Code Playgroud)

但是,当我打电话给这个网址https://irs3.4sqi.net/img/user/K4VCI4MXHWFUGXOF.jpg给我错误.

任何线索?

php api foursquare

23
推荐指数
3
解决办法
7979
查看次数

在使用Angularjs散列后,如何解析URL参数?

我正在尝试解析来自Foursquare的access_token,其中URL如下所示:

https://mywebsite.com/4sqredirect/#access_token=1234567890XXXXX

我尝试了$ routeParams和$ location并且没有得到任何回报.只有在我尝试$ route之后,我确实得到了一个具有以下属性的对象:

current:  { 
    params:  {  } 
    pathParams:  {  } 
    loadedTemplateUrl: partials/4sqredirect
    locals:  {  } 
    scope:  { 
        this:  { 
            $ref: $["current"]["scope"]
        } 
        route:  { 
            $ref: $
        } 
        location:  {  } 
        token: null
    }
} 
Run Code Online (Sandbox Code Playgroud)

这是否意味着无法使用原生的AngularJS函数来获取它?

更新:

我的控制器如下所示:

angular.module('myApp')
    .controller('4sqredirectCtrl', function ($scope, $route, $location, $routeParams) {
        $scope.route = $route;
        $scope.location = $location;
        $scope.token = $routeParams.access_token;
    });
Run Code Online (Sandbox Code Playgroud)

我的主要js如下所示:

angular.module('myApp', [
    'ngCookies',
    'ngResource',
    'ngSanitize',
    'ngRoute'
])
.config(function ($routeProvider, $locationProvider) {
    $locationProvider.html5Mode(true);

    $routeProvider
    .when('/', {
        templateUrl: 'partials/main',
        controller: 'MainCtrl'
    }) …
Run Code Online (Sandbox Code Playgroud)

javascript url foursquare angularjs angularjs-routing

21
推荐指数
2
解决办法
5万
查看次数

新的foursquare会场详细地图

我非常喜欢foursquare设计场地细节视图的方式.特别是地图位置在"标题"的视图中......它是如何完成的?细节显然是一些uiscrollview(也许是uitableview?)并且在它后面(在标题中)有一张地图所以当你向上滚动地图时,随着滚动视图反弹而被发现...有没有人知道如何做到这一点?

在此输入图像描述

xcode uiscrollview mkmapview foursquare ios

17
推荐指数
1
解决办法
6522
查看次数

调整Foursquare API搜索查询的最佳方法是什么?

我从Foursquare的场地搜索API得到了一些不稳定的结果,我想知道是否有人有关于如何处理输入参数以获得最"直观"结果的任何提示.

例如,假设我正在使用Google Maps API在"纽约,纽约"周围搜索名为"Ise Sushi"的场所,该场地相当于(lat:40.7143528,lon:-74.00597309999999).插入Foursquare Venue API,我们得到:

https://api.foursquare.com/v2/venues/search?query=ise%20sushi&ll=40.7143528%2C-74.00597309999999
Run Code Online (Sandbox Code Playgroud)

这会产生相当令人沮丧的结果:我正在寻找的场地最终位于列表的第11位.有趣的是,降低坐标的精度似乎会产生更好的结果.例如,假设我们将坐标舍入为3位有效数字:

https://api.foursquare.com/v2/venues/search?query=ise%20sushi&ll=40.7%2C-74.0
Run Code Online (Sandbox Code Playgroud)

这一次,我正在寻找的场地最终排在第二位,即使它实际上搜索中心更远(1072米,使用第一个查询时为833米).

另一个似乎有助于提高搜索质量的修改是用下划线代替空格来分隔我们的搜索词.例如,这是带下划线的原始查询:

https://api.foursquare.com/v2/venues/search?query=ise_sushi&ll=40.7143528%2C-74.00597309999999
Run Code Online (Sandbox Code Playgroud)

这产生了最直观的结果:我正在寻找的场地首先出现,并伴随着另一个结果,"伊势餐厅"(被标记为"寿司餐厅").对于它的价值,这实际上似乎是在Foursquare自己的网站上进行的相同搜索的结果集.

我很好奇我应该从中吸取哪些教训.我应该降低坐标的精度吗?我是否应该使用下划线连接我的搜索字词,如果是,那是否会限制用户订购搜索字词的方式?

search foursquare

13
推荐指数
1
解决办法
4245
查看次数

小弹出指示,如foursquare

在看到新的foursquare应用程序的最后截图和他们的气球之类的卡通说明后,我想在我的应用程序中创建其中的一些.

我发现iPhone 小弹出类似问题 的说明......怎么样?

这是foursquare app的另一个截图: 在此输入图像描述

我想知道如何通过Android实现这一目标.

在此先感谢您的帮助.

更新:这是我到目前为止所能得到的,但添加了一些带有自定义绘制背景的按钮,并使用FrameLayout对它们进行分层:

在此输入图像描述

但我仍然无法获得三角效应.也许我的自定义背景形状可以做些什么?

UPDATE2

在检查了你的建议之后,我决定采用Aaron C的想法并添加一个带箭头的图像.这是我目前的结果:

在此输入图像描述

谢谢Snailer,QuickAction API项目似乎非常有希望.在我的应用程序中实现更多功能时,我会检查出来.

现在,我只需要获得正确的颜色,或者我可以这样做.看起来也不错.

因此,总结一下我的所作所为:

  1. 在FrameView中获得了我的初始xml布局.
  2. 当我使用frameview时,我放在这里的所有东西都将堆叠在一起.这就是我可以在布局中添加内容的方法.

  3. 在那个framelayout中,我放了2个相对布局,带有三角形的图像和一个按钮来创建两个上部弹出窗口.在底部我只放了一个按钮.

  4. 而已.我希望它对某人有所帮助.

再次感谢您的帮助!

layout android popup instructions foursquare

12
推荐指数
1
解决办法
6012
查看次数

在Python Appengine上使用Httplib2

为什么我在运行使用Foursquare尝试使用OAuth的应用程序时出现此错误?

import httplib2
ImportError: No module named httplib2
Run Code Online (Sandbox Code Playgroud)

我已按照此处的说明命令行上安装了httplib2并安装了$ python setup.py install

我错过了什么吗?谢谢

python google-app-engine oauth httplib2 foursquare

11
推荐指数
1
解决办法
8766
查看次数

Httplib2 ssl错误

今天我遇到了一个有趣的问题.

我正在使用foursquare推荐的python库httplib2 raise

SSLHandshakeError(SSLError(1, '_ssl.c:504: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed'),) 
Run Code Online (Sandbox Code Playgroud)

在尝试请求oauth令牌时

response, body = h.request(url, method, headers=headers, body=data)
Run Code Online (Sandbox Code Playgroud)

_process_request_with_httplib2 function
Run Code Online (Sandbox Code Playgroud)

有谁知道为什么会这样?

python httplib2 foursquare

10
推荐指数
2
解决办法
2万
查看次数

改造:如何在请求中指定逗号分隔的参数?

我正在尝试重构我的代码以使用Retrofit(来自Volley)进行一些Foursquare API调用,但是没有找到一个正确的示例来说明如何指定具有由逗号分隔的2个值的查询参数.

我的基本网址如下:

public static final String VENUES_BASE_URL = "https://api.foursquare.com/v2/venues";
Run Code Online (Sandbox Code Playgroud)

我的其余网址是这样的:

"?ll=40.7,50.2&limit=50&radius=25000&v=20140909&venuePhotos=1&oauth_token=xxyyxx";
Run Code Online (Sandbox Code Playgroud)

我的界面的第一个实现:

public interface Fourquare {
    @GET("/explore?ll={p1},{p2}&limit=50&radius=25000&v=20140905&venuePhotos=1&oauth_token=xxyyxx")
    Response getVenues(@Path("p1") String param1,
                   @Path("p2") String param2);

}
Run Code Online (Sandbox Code Playgroud)

然后提出这样的请求:

RestAdapter restAdapter = new RestAdapter.Builder()
            .setEndpoint(ConfigConstants.VENUES_BASE_URL)
            .build();

    Fourquare fourquare = restAdapter.create(Fourquare.class);
    Response myResponse = fourquare.getVenues("50", "75");
Run Code Online (Sandbox Code Playgroud)

但是,上面给了我以下错误:

retrofit.RetrofitError: Fourquare.getVenues: URL query string "ll={p1},{p2}&limit=50&radius=25000&v=20140905&venuePhotos=1&oauth_token=xxyyxx" must not have replace block.
Run Code Online (Sandbox Code Playgroud)

第二个实现(在查看一些使用Query参数的SO响应之后.注意:一旦我找到了ll?参数调用,我将把令牌作为参数):

@GET("/explore&limit=50&radius=25000&v=20140905&venuePhotos=1&oauth_token=xxyyxx")
void getVenues(@Query("ll") String ll,
                      Callback<String> cb);
Run Code Online (Sandbox Code Playgroud)

通过这样的实际调用:

fourquare.getVenues("50,75", new Callback<String>() {
        @Override
        public void success(String s, Response response) {
            Log.d(TAG, "Successful run!"); …
Run Code Online (Sandbox Code Playgroud)

android foursquare retrofit

10
推荐指数
2
解决办法
8487
查看次数

Foursquare:场地/照片上的照片,但不是场地/探索?

如果您使用Foursquare的API场所/探索来获取特定区域的场地,您可以在响应中获得照片的数量.例如,当您按下API文档中的"试用"按钮时生成的默认查询:

https://api.foursquare.com/v2/venues/explore?ll=40.7,-74

给出类似的东西:

    <...>
    venue: {
        id: "4de1b34ec65b7a3e2109e46f",
        name: "Beekman Beer Garden",
    <...>
    photos: {
        count: 371,
        groups: [ ],
    }
Run Code Online (Sandbox Code Playgroud)

但没有会场的照片网址.

如果您尝试使用场地/照片来检索此场地的照片,您将获得完整的照片列表:

https://api.foursquare.com/v2/venues/4de1b34ec65b7a3e2109e46f/photos?group=venue

响应:

    <...>
    id: "4fecf72ae4b0f9f20ef5f4ae",
    <...>
    prefix: "https://irs0.4sqi.net/img/general/",
    suffix: "/Ch8l3fTBYzszVoOiDcWoklClo9wbWseLr2ZXBbde4es.jpg",
    <...>

    id: "4fecd642e4b0f3117eb4d2e3",
    <...>
    prefix: "https://irs1.4sqi.net/img/general/",
    suffix: "/kWzECY2VMssTWex1GNZITP-YlWzWDHZYsV5p2k4tsEk.jpg",
    <...>
Run Code Online (Sandbox Code Playgroud)

如您所见,该场地有很多公开照片.

在一些罕见的情况下,场地/探索API似乎包括照片的网址.这是为什么?有没有办法使用/探索为每个场地拍照,而不是/照片?

api photos foursquare

9
推荐指数
2
解决办法
6338
查看次数