json.dumps()转换dict为json时,可以保留双引号,不变为单引号

json.dumps解决reuqest中data类型转换的问题

问题描述

已知

    request_content = [{"content" : "问题描述" , "category" : "问题"} ,
    				   {"content" : "今天天气多少度?" , "category" : "问题"}]

想要得到request给后台的结果。request的方法使用

requests.request(url, header=header, data=request_content)								

其中,data参数需要传入字符串,不能传入list对象。

问题

1.直接使用str()将request_content转换为str类型,会出现双引号变为单引号的问题,导致后台处理出错。

request_content = [{"content": "问题描述", "category": "问题"},
                   {"content": "今天天气多少度?", "category": "问题"}]
print(str(request_content))

output:

[{'category': '问题', 'content': '问题描述'}, {'category': '问题', 'content': '今天天气多少度?'}]

2.忘记拼接成”data=content"的形式

解决方法

1.使用json.dumps(),将python内置对象转换为json字符串。json字符串还是字符串类型,只不过是json格式的字符串。
2.使用字符串拼接,加上“data=”

总结

对于python web处理的相关知识点不了解。不知道使用json.dumps()。

selfQ&A

1.为什么request()不直接使用list类型?
request()方法的data参数可以传入list、dict等,不仅仅是str类型。这和后台接受的类型有关系。

### 如何在 IntelliJ IDEA 中配置和使用 Swagger #### 添加 Maven 依赖 为了使 Swagger 能够工作,在 `pom.xml` 文件中需加入特定的依赖项。这可以通过编辑项目的构建文件来完成: ```xml <dependencies> <!-- swagger2 --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.8.0</version> </dependency> <!-- swagger ui --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.8.0</version> </dependency> </dependencies> ``` 这些依赖会引入必要的库用于生成 API 文档以及提供交互式的 UI 页面[^4]。 #### 创建 Swagger 配置类 接着创建一个新的 Java 类用来初始化并配置 Swagger 实例。通常命名为类似于 `SwaggerConfig.java` 的名称,并放置于合适的位置,比如 `config` 包内: ```java import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import springfox.documentation.builders.ApiInfoBuilder; import springfox.documentation.service.ApiInfo; import springfox.documentation.spi.DocumentationType; import springfox.documentation.spring.web.plugins.Docket; @Configuration public class SwaggerConfig { @Bean public Docket api() { return new Docket(DocumentationType.SWAGGER_2) .apiInfo(apiInfo()) .select() .build(); } private ApiInfo apiInfo(){ return new ApiInfoBuilder().title("API文档").description("").termsOfServiceUrl("") .contact(new Contact("", "", "")) .license("").licenseUrl("").version("1.0") .build(); } } ``` 这段代码定义了一个 Spring Bean 来设置 Swagger 的基本信息和其他选项。 #### 启动应用测试 当上述步骤完成后,启动应用程序即可访问默认路径 `/swagger-ui.html` 查看自动生成的 RESTful 接口文档界面。通过浏览器打开该链接可以浏览到所有已暴露出来的 HTTP 请求方法及其参数说明等信息。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值