Retrofit:如何发送带有常量字段的 POST 请求?

2024-01-10

我想发送一个带有一个实际参数的简单 POST 请求:

@POST("/token")
@FormUrlEncoded
void extendSession(@Field("refresh_token")final String refreshToken);

但是这个请求还应该发送服务器请求的一些常量值,例如client_id, client_secret and grant_type它们是常量,不应成为应用程序 API 的一部分。

做这个的最好方式是什么?


这取决于你的方法。如果您有常量,您可以构建调用所需的默认值映射。@FieldMap将适合构建包含所有所需字段的地图

private void extendSession(String token){
   Map params = buildDefaultParams();
   params.put("refreshToken", token);
   getRestAdapter().create(MyApi.class).extendsSession(params);
}
private Map buildDefaultParams(){
   Map defaults = new HashMap();
   defaults.put("client_id", CLIENT_ID);
   defaults.put("client_secret", CLIENT_SECRET);
   defaults.put("grant_type", GRANT_TYPE);
   return defaults;
}
  /**then you change your interface to this **/ 
    @POST("/token")
    @FormUrlEncoded
    void extendSession(@FieldMap() Map refreshToken);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Retrofit:如何发送带有常量字段的 POST 请求? 的相关文章

  • Poi:从 xlsm 打开 Excel 文件后将其保存为 xlsx

    我正在编写一个java程序 它打开一个用户定义的excel文件 用数据填充它 然后将其保存在用户指定的路径 文件名和扩展名下 即使输入文件是 xlsm 也应该可以声明输出保存为 xlsx 但实际上是不可能的 如果我尝试使用下面的代码 打开文
  • 最终类中的静态函数是否隐式最终?

    我的问题基本上与this https stackoverflow com q 8766476 3882565一 但这是否也适用于static功能 我想了解 编译器是否处理所有static函数在一个final类为final 是否添加final
  • 使用嵌入式 Jetty 7 发布 JAX-WS 端点

    有人可以帮忙吗 我想使用嵌入式 Jetty 7 作为端点 这是我尝试过的 public class MiniTestJetty WebService targetNamespace http public static class Calc
  • 如何使用 Android Volley API?

    我正在考虑在我的下一个项目中实现 Android Volley 库 关于 Volley 的 Google IO 演示 http www youtube com watch v yhv8l9F44qo 但是 我还没有找到该库的任何重要的 AP
  • 检查对象是否为空

    我有一个链表 其中第一个节点包含空对象 表示firstNode data等于null firstNode nextPointer null firstNode previousPointer null 我想检查firstNode 是否为空
  • oracle.jdbc.driver.OracleDriver ClassNotFoundException

    这是我收到错误的代码 我的classes12 jar已作为外部 jar 导入 import java io IOException import java io PrintWriter import java sql Connection
  • ConstraintLayout 源代码位于哪里?

    哪里可以找到android的源代码ConstraintLayout 我在支持框架存储库甚至谷歌搜索中都找不到它 它的源代码在这里 https android googlesource com platform frameworks opt
  • 如何在 ASP.NET MVC 中获取参数数组作为 GET / POST?

    如何最好地获取数组 item gt value 对作为 GET POST 参数 在 PHP 中 我可以这样做 网址 这得到的参数为 Array a gt Array one gt 100 two gt 200 有什么方法可以在 ASP NE
  • Android 应用程序中通过 VideoView 将正在播放的视频静音

    我想在我的 Android 应用程序中将 VideoView 正在播放的视频静音 我在 VideoView 类中找不到任何方法来执行此操作 知道如何做到这一点吗 我在 MediaPlayer 类中找到了一个方法 setVolume 但我无法
  • Spring portlet mvc:@Valid 似乎不起作用

    我创建了一个 bean 类并在我的控制器中使用它 但它似乎不起作用 也就是说 即使我输入了无效的年龄 result hasErrors仍然是假的 豆类 public class User Min 13 private int age pri
  • 当 SystemUI 在 Android Boot 中加载时

    如何知道系统 UI 何时加载Android启动过程 状态栏和导航栏视图到底绘制在哪里 作为SystemUI是一个特权应用程序 那么它是否在启动器应用程序 主屏幕 启动之前加载 我不知道 欢迎任何建议 下面是一系列简要解释的步骤 希望能够阐明
  • 如何在 iText 7 中创建页面大小不等的文档

    如何在 iText 7 中创建页面大小不等的文档 iText7 可以吗 在iText5中 我使用document setPageSize and document newPage 如果您通过高级 API 添加内容 Document add
  • 如何在 Spring GCP 中订阅多个 Google PubSub 项目?

    我想在 Spring Boot 应用程序中订阅多个 Google Cloud PubSub 项目 阅读完相关问题后如何使用 Spring Cloud 在一个 Spring Boot 应用程序中连接 配置两个 pubsub gcp 项目 ht
  • Maven编译错误:包不存在

    我正在尝试向现有企业项目添加 Maven 支持 这是一个多模块项目 前 2 个模块编译和打包没有问题 但我面临编译错误 我尝试在多个模块中使用相同的依赖项 我的结构是 gt parent gt pom xml gt module 1 gt
  • 如何管理一个 JInternalFrame 调用另一个 JInternalFrame?

    我有一个带有此代码的 JDesktopPane public class Menu extends JFrame implements ActionListener Creates new form Portada public stati
  • 如何强制 Spark 执行代码?

    我如何强制 Spark 执行对 map 的调用 即使它认为由于其惰性求值而不需要执行它 我试过把cache 与地图调用 但这仍然没有解决问题 我的地图方法实际上将结果上传到 HDFS 所以 它并非无用 但 Spark 认为它是无用的 简短回
  • FocusEvent 没有获取 JFormattedTextField 的最后一个值,我如何获取它?

    我有两个JFormattedTextField我的物体JFrame目的 我想要通过这些值进行基本数学 加法 JFormattedTextField对象 我希望当焦点丢失第一个或第二个文本字段时发生这种情况 但当 focusLost 事件没有
  • 如何在 VSCode 中热重载 Tomcat 服务器

    我正在从 Eclipse IDE VSCode 分别用于编码 Java servlet 和 HTML CSS JS 网页 迁移到仅使用 Visual Studio Code 因为它的轻量级 我为 VSCode 安装了几个 Java 扩展 R
  • Firebase 附加权限。是否要求用户接受

    我目前正在致力于将 Firebase Analytics 集成到我的 Android 应用程序中 我遇到的问题是 Firebase 添加了一些新权限 这些权限是 permission WAKE LOCK com google android
  • 最新版本 6.* Struts2 支持 Tomcat 10 吗? [复制]

    这个问题在这里已经有答案了 最新版本 6 Struts2 支持 Tomcat 10 吗 异常启动过滤器 struts2 java lang ClassCastException class org apache struts2 dispat

随机推荐

  • 我可以将此宏更改为内联函数而不影响性能吗?

    编辑 让我们将其命名为 测量如何出错的教训 但我仍然没有弄清楚到底是什么导致了差异 我发现了一个非常快的整数平方根函数here http www azillionmonkeys com qed sqroot html作者 马克 克朗 至少在
  • mongo-cxx-driver 库构建但持续存在链接和调试问题

    我正在尝试构建 mongo cxx driver 以便在 Windows 10 上使用 Visual Studio 2015 与 Cinder 一起使用 Cinder 使用 Boost 1 58 因此我根据其包含的 Boost 版本构建了驱
  • 实现接口但将成员更改为私有

    默认情况下 接口的所有成员都是公共的 但是我的接口中有一些属性我想用作实现我的接口的一些子类的私有成员 这是可以做的事情吗 还是我在这里偏离了基础 这些天我正在努力在我的架构中使用更多接口 所以我还不太熟悉 接口的要点是它们提供了其他对象可
  • 使用列表对象 Bot 框架进行提示对话框选择

    我正在创建一个 PromptDialog Choice 它填充存储在数据库中的对象选项列表 但是 它只显示对象的类型 而不显示选项的名称 谁能建议我从数据库加载选项并将其与 PromptDialog 绑定的最佳方法 这是我尝试过的 priv
  • 更改 Facebook Like 按钮的大小

    我使用下面的代码来获取 Facebook 的 Like 按钮 现在的问题是 我想更改呈现的 赞 按钮的大小 我尝试了宽度属性 但它根本不起作用 我尝试重写 facebook 用于以下代码的 CSS 类 但重写 CSS 类也不起作用 那么请告
  • 在 Android 上的游戏中购买时 Soomla IAB 错误

    我使用 unity 3d 制作了一个简单的游戏 只是为了测试 Google 服务 对于 Google Play 游戏服务 我使用 googleplayplugin 对于 iab 使用 soomla 插件 我认为所有配置都正确 我在我的 ne
  • LocationManager 正在服务 - 如果 1 分钟内没有修复则需要停止

    我有定期服务 每 5 分钟开始使用一次警报 服务实现 LocationListener 以获取 GPS 定位并将其保存到 SqLite 数据库中 我给服务人员 1 分钟的时间来尽可能获得最佳修复 如果在此之前我的准确率 一切都很好 我还有代
  • 如何在Python中使用密码加密文本?

    令人惊讶的是 在谷歌上很难找到这个问题的直接答案 我想从用户那里收集一段文本和一条消息 例如1PWP7a6xgoYx81VZocrDr5okEEcnqKkyDc hello world 然后我希望能够以某种方式加密 解密带有文本的消息 以便
  • SQL Server 2008 R2 地理距离?

    我创建了一个包含以下列的表 Text varchar 255 Location geography 它们包含荷兰的一些城市作为数据 从谷歌地图获取坐标 Rotterdam POINT 51 925637 4 493408 4326 Utre
  • SVN最佳实践-删除已完成的分支

    完成 重新集成分支后 最佳做法是删除该分支 以便您的头分支文件夹仅显示当前分支吗 如果是这样 什么时候删除重新整合的分支合适 次要版本发布后 这是我们标记的时间 Cheers 根据this https stackoverflow com q
  • 尝试安装 python 时出现错误

    我已经下载了 python 3 6 1 tar xz 然后我提取了它 有一个文件 README rst 这是说明文件 并有如何安装的说明 在 Unix Linux BSD macOS 和 Cygwin 上 configure make ma
  • k-最大双重选择

    想象一下你有两个麻袋 A and B with N and M球分别在其中 每个球都有一个已知的数值 利润 系统会要求您提取 有替换 总利润最大的一对球 由所选球的乘法给出 最佳提取是显而易见的 从其中选择最有价值的球A以及来自B 当你被要
  • 如何使用BluetoothHeadset API获取蓝牙连接的设备

    我想获取蓝牙连接设备的列表 而不仅仅是配对的设备 I found BluetoothHeadset API in API 级别 11它提供了方法getConnectedDevices 获取已连接的蓝牙设备的列表 如何使用此 API 获取蓝牙
  • 对多于一列进行过滤

    我有一个可以从一列中过滤的表格 handleSearch function oEvent var sValue oEvent getParameter value var oFilter new sap ui model Filter RA
  • jqGrid ColumnChooser 有完整的工作示例吗? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 At http www trirand com jqgridwiki doku php id wiki jquery ui methods
  • 单元测试有哪些流行的命名约定? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • Android webview 得到 sslError SSL_UNTRUSTED 但证书有效

    我已经实施了onReceivedSslError我的 WebViewClient 中的方法来正确处理 webview 中无效的 https 证书 Override public void onReceivedSslError WebView
  • 在 Quartz.net 中处理 JobExecutionException

    可能是一个愚蠢的问题 但无论如何 我已经设置了quartz 并且可以安排作业 并且我可以确认作业 实现 IJob 接口 正在运行 查看网站上的文档 教程的第 3 课 允许您从执行方法抛出的唯一异常类型是JobExecutionExcepti
  • 在 C# 中使用反射将 func 转换为谓词

    我基本上想做this https stackoverflow com questions 731249 how to convert funct bool to predicatet 但我不知道 T 是什么 所以我使用反射树和表达式树来构建
  • Retrofit:如何发送带有常量字段的 POST 请求?

    我想发送一个带有一个实际参数的简单 POST 请求 POST token FormUrlEncoded void extendSession Field refresh token final String refreshToken 但是这