- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我使用 Retrofit(我是初学者)向 google maps directions api 发送 http 请求。这是我要发送的网址:
我收到一条消息说:
{ "error_message" : "Too many waypoints in the request (11). The maximum allowed waypoints for this request is 8, plus the origin, and destination.", "routes" : [], "status" : "MAX_WAYPOINTS_EXCEEDED" }
这似乎是一个正常的答案,因为当我查看 Logcat(Android 工作室)时,发送的 url 是:
我想这与标题有关。你能帮我“清理” url 以便我发送第一个而不是第二个吗?
编辑:我将添加我的代码。
考虑到我正在为我的后台作业使用 android-priority-jobqueue,并且我是在我的后台作业中发出我的 http 请求,我必须将同步请求与 Retrofit 一起使用,因为被阻止线程将是后台作业的线程。首先是api:
//Retrofit API
//DirectionApiRequestInterface.java
public interface DirectionApiRequestInterface {
@GET("/maps/api/directions/json")
/*
//asynch request
public void getJson(@Query("origin") String origin,
@Query("destination") String destination,
@Query("waypoints") String waypoints,
@Query("sensor") String sensor,
//and api key?
Callback<String> callback);*/
//synch request: all wait on the same thread
public Response getJson(@Query("origin") String origin,
@Query("destination") String destination,
@Query("waypoints") String waypoints,
@Query("sensor") String sensor);
}
现在在我的工作中,我有这些要求:
/**
* Created by Max-poly on 2015-07-14.
* in this file, we will manage the priorityJobQueue (android-priority-jobqueue from square.)
* The tasks performed here are:
* 1- make the Http request
* 2- parse the response(which we'll try to get in String)
* 3- calculate the distance between all the points and send the drawn route UI
*/
public class DirectionRequestJob extends Job {
public static final int PRIORITY = 1;
private static String baseUrl_ ="https://maps.googleapis.com";
private static DirectionApiRequestInterface client_;
private CustomLogger customLogger;
private ArrayList<String>(); url_;
/*note that the array list contains the splitted url:
origin: url.get(0)
destination: url.get(1)
waypoints: url.get(2)
sensor: url.get(3)
*/
public DirectionRequestJob(ArrayList<String> url) {
super(new Params(PRIORITY).requireNetwork().persist());
url_ = new ArrayList<String>();
url_.addAll(url);
}
//lifecycle of a Job
@Override
public void onAdded(){
//doesn't apply to our case
}
@Override
public void onRun() throws Throwable{
setupClient();
// retrofit synch response
String response = converter(get().getJson(url_.get(0),urls_.get(1),urls_.get(2),urls_.get(3)));
//parse
//evaluate the routes/distance/duration etc
}
@Override
protected void onCancel() {
// Job has exceeded retry attempts or shouldReRunOnThrowable() has returned false.
}
@Override
protected boolean shouldReRunOnThrowable(Throwable throwable) {
return false;
}
//-end lifecyle
public static DirectionApiRequestInterface get(){
return client_;
}
static{
setupClient();
}
//here is where the rest adapter is setup
private static void setupClient(){
RestAdapter.Builder builder = new RestAdapter.Builder()
.setEndpoint(baseUrl_)
.setClient(new OkClient(new OkHttpClient()))
.setLogLevel(RestAdapter.LogLevel.FULL);
RestAdapter restAdapter = builder.build();
client_ = restAdapter.create(DirectionApiRequestInterface.class);
}
public String converter(Response response){
return new String(((TypedByteArray) response.getBody()).getBytes());
}
}
如您所见,响应向我返回了上面的错误消息。
最佳答案
我相信您的 url_
项目字符串是 origin=the_origin
、destination=the_destination
等等。如果你只留下内容,=
右边的内容,应该可以。
关于android - 如何通过改造发送 "clean"url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31469448/
假设我想在编译项目之前将项目本地依赖项(jar 文件)安装到本地 Maven 存储库 (~/.m2),这样我就可以在 POM 中引用它们,就像引用 Maven 中的任何依赖项一样中央。目前,我正在使用
我需要使用 Clean 编程语言列出目录中的所有文件,但我不知道这样做的任何函数。有人可以帮助我吗? 最佳答案 您可以使用 Directory module 中的函数 getDirectoryCont
我的应用程序工作正常,我能够使用 jar 执行 mvn clean install并能够执行 jar 文件,但我将其更改为 war 文件,但我无法执行 mvn clean install . 这些之间
我是 Maven 的初学者。当我点击 clean & Build 在 netbeans 中重建我的项目时,它抛出一个错误 Failed to execute goal org.apache.maven
我已经为我的一些模型覆盖了 clean() 方法来构造约束以满足我的数据库架构要求(因为它需要运行时信息来进行这些验证)。 从现在开始,我已经完成了大部分后端组件(模型、信号、..),现在我正在尝试编
从 Android Studio 项目的终端发出以下语句有什么区别: Android_Studio_Project_Path: ./gradlew clean Android_Studio_Proje
我曾在不同的团队工作过,在一个团队中,人们倾向于在合并旧分支后立即清理它们。在其他团队分支永远停留。删除/保留旧分支有什么好处?这是否取决于我们使用的源代码控制系统? (在我的情况下 - SVN)。
我有一个相当复杂的(iPhone SDK)Xcode 项目,有很多目标——4 个静态库、单元测试、多个示例应用程序、一个运行 shell 脚本的 BuildAll 以及一个运行另一个 shell 脚本
我有一个 cucumber 项目,当您单独运行 cucumberrunner 文件时,该项目运行良好 [运行方式 -->Junit 测试]。 当我尝试使用 maven 命令运行相同的文件时,它失败了:
我在 cruiseControl 中有一个 msbuild 任务,它首先清除然后重建。如果我将其更改为“清理并构建”(而不是重建),会有什么不同吗? Rebuild 为每个项目执行“清理 + 构建”。
我对 Clean Architecture 中的 Gateway to Entity 依赖有疑问。我认为以下同心圆图形经常被介绍为整洁的架构。 在上图中,Gateway并没有直视Entity。但是,还
我使用M2e + Eclipse + Maven,我想知道两者之间的区别: 在终端和中运行“mvn clean” 从Eclipse 运行“干净的项目”吗? 有人可以请教吗? 最佳答案 通过一些快速测试
我试图弄清楚 package.json 脚本部分中“clean:dist”或“clean:js”与“clean”的作用?我在网上搜索并查看了NPM documentation但找不到任何线索。那么有人
我在 Linux 上的构建过程有一个小问题。 无论出于何种原因,在我的代码中,如果我发出“make clean”命令,Linux 会生成一个名为“clean”的文件。问题是我的项目的 makefile
mvn clean package和mvn clean install到底有什么区别?当我运行这两个命令时,它们似乎都在做同样的事情。 最佳答案 好吧,两者都会清理。这意味着他们将删除目标文件夹。真正
您在每个应用程序的开发过程中都遇到了某个时刻,您在模拟器中看到的内容与您认为应该发生的情况不符。这些大多是人为错误——或者至少在大多数我的案例中是这样的;-)——但有时 Xcode 只是“迷失了方向”
我使用这两个命令来解决我项目中的依赖问题。 mvn -U clean compile解决的问题。但我不知道它们之间的区别。请解释这些命令之间的区别以及我何时使用 mvn clean compile和
我正在为我的项目使用 Maven。如果我的项目不使用某些本地资源,这不是问题。 以便我遵循本指南 https://stackoverflow.com/a/61576687/6720896 将我的本地
我正在尝试创建一个 Grunt 任务来清理目录中的所有文件、子目录及其文件等。 我可以删除所有文件,但文件夹始终保留。 clean: { preview: ["live_previe
我有以下情况: 我有一个包含几个子项目的项目。今天我尝试通过命令行使用 gradle 构建项目。 执行 ./gradlew clean :build 时构建成功, 但不是 ./gradlew clea
我是一名优秀的程序员,十分优秀!