给定参数名称和值的元组列表,例如:
[("foo", 10), ("bar", None), ("baz", "some_string")]
Run Code Online (Sandbox Code Playgroud)
和一些 url 字符串,例如:
"/some/url/string"
Run Code Online (Sandbox Code Playgroud)
我的函数应该能够创建以下输出字符串(请注意,查询字符串中不包含 None 值元组):
"/some/url/string?foo=10&baz=some_string"
Run Code Online (Sandbox Code Playgroud)
我尝试使用 join 但由于值并非都是字符串,因此我必须首先转换它们。也许有人可以帮助我用一种简短而干净的方式来做到这一点。
<action name="AddedPaid" class="iland.payment.SupplierPaidAction" method="insert">
<result name="success" type="redirect">ShowPaid</result>
<result name="input">/pages/payment/addToPay.jsp</result>
<result name="login">/pages/login.jsp</result>
</action>
<action name="ShowPaid" class="iland.payment.SupplierPaidAction" method="fetchAllByfk">
<result name="success">/pages/paid/showPaidDetails.jsp</result>
<result name="input">/pages/payment/ShowPay.jsp</result>
<result name="login">/pages/login.jsp</result>
</action>
Run Code Online (Sandbox Code Playgroud)
这里AddedPaidAction用于将表单数据添加到数据库中。将数据添加到数据库后,我将结果重定向到ShowPaid操作。这是正常工作的。现在我希望每当我将AddedPaid操作重定向到ShowPaid.
必须显示我已在 中添加数据ShowPaid的特定数据。supplierPaymentIdAddedPaid
重定向后是怎样的 url
http://localhost:8082/ClothStore/ShowPaid
Run Code Online (Sandbox Code Playgroud)
我想
http://localhost:8082/ClothStore/ShowPaid?supplierPaymentId=4
Run Code Online (Sandbox Code Playgroud) 我想运行wiremock的独立jar文件,并在用户点击特定url后发送一些json数据。
我创建了一个示例 json 文件并将其放置在我的应用程序的映射目录中。
样本.json
{
"request":
{
"url": "/data?date=date",
"method": "GET",
"queryParameters" : {
"date" : {
"matches" : "^\\d{4}-\\d{2}-\\d{2}$"
}
}
},
"response":
{
"status": 200,
"headers":
{
"Content-Type" : "application/json"
},
"body": "[{\"a\":\"A\",\"b\":\"B\",\"c\":\"C\"},{\"a\":\"A\",\"b\":\"B\",\"c\":\"C\"}]"
}
}
Run Code Online (Sandbox Code Playgroud)
我想在浏览器中 ping 下面的 url,以便我可以在浏览器上获取 json 响应。
编辑后的网址 -
192.168.0.5:8080/data?date=2017-02-02
Run Code Online (Sandbox Code Playgroud)
我正在使用下面的命令来运行我的应用程序 -
java -jar wiremock-standalone-2.6.0.jar
Run Code Online (Sandbox Code Playgroud)
我想将查询参数日期值与请求的查询参数日期值相匹配。
我无法在浏览器中看到 json 响应,因为它无法识别请求的 url。
我在编写映射 json 文件时缺少什么?
如何编写查询参数以便识别我的输入请求并在浏览器上提供 json 响应?
我想知道是否有任何理由使用
this.someProperty = this.route.snapshot.paramMap.get('someParam');
Run Code Online (Sandbox Code Playgroud)
代替
this.route.paramMap.subscribe((param) =>
{
this.someProperty = param.get('someParam');
});
Run Code Online (Sandbox Code Playgroud)
queryParamMap 也是如此。
在我关注的教程中(由 Deborah Kurata 在 Pluralsight 上发布),他们似乎默认使用快照,并且仅当您期望参数更改而路线保持不变时才订阅。但应用程序往往会随着时间而改变。更改可能会导致参数发生变化而路线保持不变的情况。人们很容易忽视这种情况。
那么使用订阅而不是快照应该是(或者是)最佳实践吗?
快照方式写起来比较短,但是还有其他好处吗?
我可能在这里征求意见,但我想知道是否有官方的最佳实践。
提前致谢。
所以我一直在尝试探索 Lambda 容器镜像
我有一个 lambda 函数如下
测试.go:
package main
import (
"context"
"fmt"
"github.com/aws/aws-lambda-go/events"
"github.com/aws/aws-lambda-go/lambda"
)
func handleRequest(ctx context.Context, request events.APIGatewayProxyRequest) (events.APIGatewayProxyResponse, error) {
fmt.Println("Request %s \n\n", request)
fmt.Println("Context %s \n\n", ctx)
name := request.QueryStringParameters["name"]
return events.APIGatewayProxyResponse{Body: fmt.Sprint("Hello %s", name), StatusCode: 200}, nil
}
func main() {
lambda.Start(handleRequest)
}
Run Code Online (Sandbox Code Playgroud)
我的 Docker 文件为:
FROM amazon/aws-lambda-go
COPY bin/test /var/task
CMD [ "test" ]
Run Code Online (Sandbox Code Playgroud)
我构建了上面的docker文件,标签为testing_go,并按如下方式运行它
docker run -p 8080:8080 testing_go
Run Code Online (Sandbox Code Playgroud)
并尝试按如下方式调用它
curl -X GET --url http://localhost:8080/2015-03-31/functions/function/invocations?name=JOHN --header 'Content-Type: application/json' --data '{}'
Run Code Online (Sandbox Code Playgroud)
我看到容器日志显示了以下上下文和请求的值
Request …Run Code Online (Sandbox Code Playgroud) 我对 WooCommerce 中的自定义字段有疑问:有没有办法根据自定义字段元键和值显示产品?
我创建了一个用于交付的产品自定义字段,元键是custom_text_field_delivery,值是24h、5days和7days。
然后我尝试通过 URL 获取它们,例如:localhost/shop/?custom_text_field_delivery=24h,但没有成功。
有什么方法可以显示它们,或者我应该为每个选项创建单个页面?
我设置了这条路线:
@Get('/name/like')
findByLikeName(@Query() query: { supplierID: string; name: string }) {
return this.supplierProductService.findByLikeName(query);
}
Run Code Online (Sandbox Code Playgroud)
它利用底层服务中的查询参数:
async findByLikeName({
supplierID,
name,
}: {
supplierID: string;
name: string;
}): Promise<SupplierProduct[]> {
return await this.supplierProductRepository.findAll({
where: {
name: {
[Op.like]: `%${name}%`,
},
supplierID: supplierID,
},
});
}
Run Code Online (Sandbox Code Playgroud)
但是,假设我想将 sellerID 移动到 /:supplierID 路由参数中,同时在查询对象中维护名称(以及潜在的其他查询参数),我将如何实现这一点?
router.query.title当我刷新页面时消失。
据我发现,我必须使用 getServerSideProps,但我不知道在 getServerSideProps 上输入什么。或者有什么办法可以做到吗?
编辑:我尝试了 Yilmaz 的解决方案并删除了 as={} 现在它可以工作了。但是现在查询链接太长而不使用 as={} 有什么解决方案吗?
索引.tsx
const Projects = () => {
const [projects, setProjects] = useState(data);
{projects.slice(0, loadMore).map((project) => (
<Link
key={project.id}
href={{
pathname: "/projects/" + project.title,
query: {
id: project.id,
category: project.category,
title: project.title,
image: project.image.src,
image1: project.image1.src,
image2: project.image2.src,
image3: project.image3.src,
image4: project.image4.src,
image5: project.image5.src,
},
}}
as={"/projects/" + project.title}
passHref={true}
>
}
Run Code Online (Sandbox Code Playgroud)
[id].tsx
import { GetServerSideProps } from "next";
export const getServerSideProps: GetServerSideProps = async (context) => { …Run Code Online (Sandbox Code Playgroud) query-string typescript reactjs server-side-rendering next.js
我已经完成了 .NET MAUI“创建 .NET MAUI 应用程序”启动教程。我对教程进行了一些修改,以使用 sqlite 数据库而不是 CollectionView 中每一行的文件。当他们在集合视图中编辑一行时,他们将该行的 DTO id 传递给新视图:
await Shell.Current.GoToAsync($"{nameof(NotePage)}?{nameof(NotePage.ItemId)}={SelectedNote.ID}");
Run Code Online (Sandbox Code Playgroud)
新视图使用以下注释加载 ItemID:
[QueryProperty(nameof(ItemId), nameof(ItemId))]
Run Code Online (Sandbox Code Playgroud)
然后,我使用该 ItemId 并对数据库进行另一次调用以返回 DTO,但由于我是从数据库加载数据,所以我已经从 CollectionView 中获得了 DTO,我只想将整个内容传递给新视图,如下所示某种查询参数来节省资源。我该怎么做呢?
我在网上看到有人提供了一个教程,显示可以这样通过:
await Shell.Current.GoToAsync(nameof(NotePage), SelectedNote);
Run Code Online (Sandbox Code Playgroud)
但是 Visual Studio 说我的第二个参数必须是 bool,所以我猜那些教程是错误的。
有人知道是否可以通过这种方式或类似的方式从视图传递 DTO?
谢谢,
我正在尝试创建一个简单的搜索框,其结果类似于http://www.example.com/Search?s=searchTerm 我有路由设置,以便它接受这样的网址,并做正确的事情.我遇到的问题是获取表单来创建查询字符串.我尝试了很多变化:
<% using (Html.BeginForm("Search", "Home", FormMethod.Get, new { ???? })) {%>
<input id="submitSearch" class="searchBox" type="text" runat="server"/>
<input type="submit" value="Search" /> <%} %>
Run Code Online (Sandbox Code Playgroud)
我不确定如何设置Html.BeginForm,因此它抓取submitSearch值并将其传递给/ Search?s = valueHere.这似乎我错过了一些简单的事情.
query-string ×10
parameters ×2
angular ×1
asp.net-mvc ×1
aws-lambda ×1
c# ×1
containers ×1
go ×1
json ×1
list ×1
maui ×1
nestjs ×1
next.js ×1
php ×1
product ×1
python ×1
reactjs ×1
routeparams ×1
string ×1
struts2 ×1
tuples ×1
typescript ×1
wiremock ×1
woocommerce ×1