Sẽ rất hữu ích nếu tham số "order_by" & "sắp xếp" có thể được chuyển trong chuỗi truy vấn api.Có thông số api order_by/sort trong các tác phẩm không?
"order_by" phải chấp nhận các tùy chọn sau: khoảng cách | checkins | tên
"sắp xếp" phải chấp nhận các tùy chọn sau: asc | desc
Tập hợp kết quả phù hợp phải có tham số order_by và sắp xếp được áp dụng trước khi thu hẹp tập hợp kết quả thành kết quả "50" tối đa được trả về.
Đây có phải là trên radar của thiết bị phát sóng hoặc là thứ gì đó sẽ không được cung cấp không?
Chúng tôi đang xây dựng một ứng dụng cho phép người dùng xác định vị trí "nhà hàng" gần nhất với họ dựa trên vị trí địa lý của thiết bị.
Vấn đề chúng tôi đang gặp phải là đặt bán kính mặc định. Chúng tôi bắt đầu bằng cách thiết lập bán kính đến 3200 mét, hy vọng rằng điều đó sẽ trả lại cho thuê một số kết quả cho các vị trí thưa thớt trong khi cũng trả lại kết quả gần nhất cho các vị trí dày đặc.
Tính năng này hoạt động cho các vị trí quay lại dưới 50 vì chúng tôi có thể sắp xếp phản hồi bài đăng, nhưng trong một khu vực dày đặc như Washington DC, khi có hơn 50 kết quả thì 50 mà api quyết định trả về KHÔNG phải là gần nhất các ll. Vì vậy chúng tôi phải cấu trúc truy vấn của chúng tôi như hình dưới đây (mà hút gây ra nó đòi hỏi tối đa 7 lượt truy cập vào api) để cố gắng tìm thấy rằng "điểm ngọt" chỉ dưới 50 kết quả.
Đây là vấn đề chúng tôi đang gặp phải đối với các vị trí "gần tôi" trong ứng dụng của chúng tôi. Chúng tôi có một vấn đề tương tự khi cố gắng hiển thị các địa điểm "phổ biến" trong ứng dụng, nhưng tôi sẽ lưu nó cho một bài đăng khác.
ob_start();
require_once 'includes/EpiCurl.php';
require_once 'includes/EpiFoursquare.php';
$clientId = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxx';
$clientSecret = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx';
$fsObjUnAuth = new EpiFoursquare($clientId, $clientSecret);
$time_start2 = microtime(true);
$result = $fsObjUnAuth->get('/venues/search', array(
'categoryId' => '4d4b7105d754a06374d81259',
'limit' => '50',
'radius' => '100',
'intent' => 'checkin',
'll' => $ll,
'v' => '20120211'
));
$result_count1 = count($result->response->venues);
if ($result_count1 < 30) {
$result = $fsObjUnAuth->get('/venues/search', array(
'categoryId' => '4d4b7105d754a06374d81259',
'limit' => '50',
'radius' => '200',
'intent' => 'checkin',
'll' => $ll,
'v' => '20120211'
));
$result_count2 = count($result->response->venues);
if ($result_count2 < 30) {
$result = $fsObjUnAuth->get('/venues/search', array(
'categoryId' => '4d4b7105d754a06374d81259',
'limit' => '50',
'radius' => '400',
'intent' => 'checkin',
'll' => $ll,
'v' => '20120211'
));
$result_count3 = count($result->response->venues);
if ($result_count3 < 30) {
$result = $fsObjUnAuth->get('/venues/search', array(
'categoryId' => '4d4b7105d754a06374d81259',
'limit' => '50',
'radius' => '800',
'intent' => 'checkin',
'll' => $ll,
'v' => '20120211'
));
$result_count4 = count($result->response->venues);
if ($result_count4 < 30) {
$result = $fsObjUnAuth->get('/venues/search', array(
'categoryId' => '4d4b7105d754a06374d81259',
'limit' => '50',
'radius' => '1200',
'intent' => 'checkin',
'll' => $ll,
'v' => '20120211'
));
$result_count5 = count($result->response->venues);
if ($result_count5 < 30) {
$result = $fsObjUnAuth->get('/venues/search', array(
'categoryId' => '4d4b7105d754a06374d81259',
'limit' => '50',
'radius' => '1600',
'intent' => 'checkin',
'll' => $ll,
'v' => '20120211'
));
$result_count6 = count($result->response->venues);
if ($result_count6 < 30) {
$result = $fsObjUnAuth->get('/venues/search', array(
'categoryId' => '4d4b7105d754a06374d81259',
'limit' => '50',
'radius' => '3200',
'intent' => 'checkin',
'll' => $ll,
'v' => '20120211'
));
$result_count7 = count($result->response->venues);
}
}
}
}
}
}
nên không phải là được yêu cầu trên một diễn đàn Foursquare? – rene
Tôi cho rằng bạn đang đề cập đến/địa điểm/điểm cuối tìm kiếm cụ thể? hoặc tất cả các điểm cuối tìm kiếm? – akdotcom
Có - Tôi chỉ đề cập đến/địa điểm/điểm cuối tìm kiếm –