I'm just learning Retrofit and OKHttp, now I have an issue.
Every request in my app is POST, just like this:

```
@FormUrlEncoded
@POST("some url")
Observable<Result> getData(@Field("id") String id);

```

In every POST, there are two same params. So in a most simple way, I can add two more @Field in every method, for example, @Field("token"),@Field("account"). But I think there must be a smart way.

Then I thought OkHttpClient may solve this.

```
OkHttpClient client = new OkHttpClient.Builder().addInterceptor(new Interceptor() {
        @Override
        public Response intercept(Chain chain) throws IOException {
            Request request = chain.request();
            RequestBody body = new FormBody.Builder().add("account", "me")
                    .add("token", "123456").build();
            request = request.newBuilder().post(body).build();
            return chain.proceed(request);
        }
    }).build();
Retrofit retrofit = new Retrofit.Builder()
            .baseUrl("some base url")
            .client(client)
            .addConverterFactory(GsonConverterFactory.create())
            .addCallAdapterFactory(RxJavaCallAdapterFactory.create())
            .build();

```

Or

```
HttpUrl url = request.url().newBuilder()
                    .setEncodedQueryParameter("account", "me")
                    .setEncodedQueryParameter("token", "123456")
                    .build();

```

The first method just replace all Field to these two.

The second method just add these two as GET parameters, not POST.

Now I have absolutely no idea how to make this work.