Comments (9)
Instead of:
/post/view/:postIDIt could be (this is format is by no means final and only meant to illustrate the concept):
/post/view/:postID
These look eerily similar ;)
from jlroutes.
Heh, oops. I guess it didn't like the format I proposed. :P updated it. Thanks for pointing that out!
from jlroutes.
Why not use "#" instead of ":"?
post/view/#postID
from jlroutes.
post/view/#postID
Why use "#" instead of ":"? I'd prefer ":" unless there's a real reason. "#" has other semantic meaning on web URLs - is that an issue here?
/post/view/:[postID:number]
Since we're used to seeing (NSNumber *)postID
, I'd prefer to see the type prefix the variable, such as /post/view/:[number:postID]
.
What types should be considered? Numbers, obviously, but what about BOOLs? Nulls? Arrays (via ?foo[]=bar&foo[]=baz
)? I think I'm probably overthinking it 😄
from jlroutes.
Yeah I'm still trying to figure out what types make sense. Numbers and BOOLs are the most obvious choices.
Arrays are good too but there seems to be no actual standard about how arrays are represented in URLs, so I'm a bit cautious of that. I've seen key=value1&key=value2&key=value3, I've seen the one you suggested, and I've even seen weird things like key=[value1,value2,value3]. I don't really like any of them so I'm not sure how to just 'pick' one to be a standard.
from jlroutes.
The other issue that I see here is that there isn't really an elegant way to handle typed URL parameters (read: GET params). Maybe that's okay? I even use a "debug=true" GET param example in the readme, but there would be no way to actually just tell JLRoutes that that's a BOOL even though you could tell it that any other regular parameter is a BOOL.
from jlroutes.
Moving to future
from jlroutes.
Why not allow any object to be passed? I'd like to be able to pass NSDictionaries and my own NSObject subclasses.
from jlroutes.
I don't think this is worth doing. Closing.
from jlroutes.
Related Issues (20)
- When should I use Handler Block Helper?
- Multithreaded is not safe
- v2.1: Umbrella header for module 'JLRoutes' does not include header 'JLRRoute___________.h' HOT 1
- Routing table?
- xcode warnings when using latest 2.1 release HOT 5
- pass object
- How to route a URL with port and fragment like: "https://www.tencent.com:443/resource#fragment"
- How do I jump to the deeper level controller
- Mattern matching broken when having a route with a trailing / HOT 1
- How do I call back between two controllers? HOT 1
- Thanks to the author, I have translated this repo to Swift 5 HOT 1
- Version 2.1 is no longer compatible with Carthage
- Ambivalent behaviour of wildcard pattern
- Apple Privacy Manifest HOT 3
- JLRoutes does not handle addRoute when open(url, options: [:]) is called HOT 1
- Optionals not appending following items HOT 4
- Can not match the following situation HOT 1
- There are some memory leak problem HOT 1
- The first execution of the jump controller code does not take effect HOT 1
- [[UIApplication sharedApplication] openURL:url] is Deprecated, please update README
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 jlroutes.