Comments (9)
I like this idea. I'd been thinking a while back about how to be a bit more expressive in specifying query parameters, and I think this could be the right way.
I'm happy to add this to my backlog, or accept a pull request of you feel like having a go at adding it yourself.
from wiremock.
Is this now scheduled for a future version?
And is there an example of how to do this currently?
from wiremock.
It's on the list, although I don't have any idea when I'll get to it as I haven't been able to commit much time to it recently.
The query string is included when evaluating a URL regex (with urlMatching(...)
) so it's possible to match on query params this way.
from wiremock.
Hello! I wonder if this feature proposal has had any love recently? This would be really useful as at the moment we can't do "urlPattern": "/something?param=[a-z]+" - it seems only full url match works with query string. Am I correct?
from wiremock.
I've been up to my eyeballs in client work over the last couple of months, so I've had no time at all for WireMock stuff. Expecting a break soon where I can catch up a bit.
I'm surprised the example you've given isn't working. Can you give an example of a URL you'd expect to match but doesn't?
from wiremock.
Understandable, and let me congratulate you on your fine work with this tool :)
The example I was talking about is this one:
URL: /something?param=value
Mapping:
{
"request": {
"method": "GET",
"urlPattern": "/something?param=[a-z]+"
},
"response": {
"status": 200,
"body": "something",
"headers": {
"Content-Type": "test/plain"
}
}
}
This request gets a 404...
In order for this request to match, the mapping would currently have to be exact:
{
"request": {
"method": "GET",
"url": "/something?param=value"
},
"response": {
"status": 200,
"body": "something",
"headers": {
"Content-Type": "test/plain"
}
}
}
from wiremock.
The problem is that the ? in the urlPattern is unescaped. Try this:
"urlPattern": "/something\\?param=[a-z]+"
from wiremock.
Ah indeed that would probably be it, silly me!
from wiremock.
Query param matching added in 1.52
from wiremock.
Related Issues (20)
- WireMock.stubFor(..) should have appropriate error description instead of unclear JsonException on 404 error code from non-WireMock server
- Relative date matching uses the system timezone
- Broken link in /Documentation / Using WireMock with Spring Boot HOT 1
- Fix matcher distance short-circuit biases HOT 1
- Allow scenario state to be scoped to arbitrary request attributes
- Version 3.5.3 of org.wiremock:wiremock-standalone references removed wiremock.org.apache.commons.io.IOUtils HOT 8
- Proxy - changing User-Agent with additionalProxyRequestHeaders stopped working after 3.2.0
- Include conditions in proxying functionality HOT 5
- xPath helper doesn't return result when XPath expression returns a single string item
- wiremock-jetty12: NullPointerException within WireMockHandlerDispatchingServlet (similar to #1224) HOT 1
- Failing while building wiremock-jre8-standalone version 2.31.0 using ./gradlew build (wiremock-jre8-standalone:2.31.0)
- Running tests in parallel with Wiremock 3.0.0 triggers random timing/concurrency issues HOT 2
- @RegisterExtension + WireMockExtension: Timing & state issues when using "static" HOT 2
- EqualsToJson has bad performance for big json with common keys occuring often HOT 2
- Handlebars helper - join
- Init / shutdown hooks for extensions
- Update org.xmlutil:xmlunit-core to Version 2.10.0 HOT 2
- Introduce a GUI for open source
- NPE on WireMockServer.getServeEvents when using a StubRequestFilter
- Adding more jettyAcceptors seems to do nothing besides cause thread contention. HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from wiremock.