<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> I have searched the <a href="https://github.com/zeit/next.js/issues">issues</a> of this repository and believe that this is not a duplicate.</li>
</ul>
<p dir="auto">When it comes to node servers, <a href="https://github.com/express/expressjs">expressjs</a> has now got tough competition when it comes to performance.<br>
Here is a <a href="https://github.com/fastify/fastify#benchmarks">benchmark</a> which shows some alternatives like <a href="https://github.com/zeit/micro">micro</a>, <a href="https://github.com/senchalabs/connect">connect</a> and <a href="https://github.com/fastify/fastify">fastify</a> are much faster/efficient than expressjs.</p>
<p dir="auto">Are there any plans of next.js moving to one of these faster alternatives to expressjs?</p>
<ul dir="auto">
<li>[ x] I have searched the <a href="https://github.com/zeit/next.js/issues?q=is%3Aissue">issues</a> of this repository and believe that this is not a duplicate.</li>
</ul>
<h2 dir="auto">Expected Behavior</h2>
<p dir="auto">Have the url prop on the server too, so that the "withData" hoc (as per the withApollo example) can use it to execute the query server-side</p>
<h2 dir="auto">Current Behavior</h2>
<p dir="auto">this.props.url is undefined on the server, so that SSR is done without data and I see the query done client-side (SSR HTML has just the app scheleton).</p>
<h2 dir="auto">Steps to Reproduce (for bugs)</h2>
<div class="highlight highlight-source-js notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="graphql(singleProduct, {
    options: ({ url }) =&gt; ({ 
      variables: {
        seoName: url.query.productSeoName,
        crossSellingLimit: 12
      } 
    }),
    props: ({ data: { loading, error, product } }) =&gt; ({
      loading,
      error,
      product
    })
  })(MyComponent)"><pre class="notranslate"><span class="pl-en">graphql</span><span class="pl-kos">(</span><span class="pl-s1">singleProduct</span><span class="pl-kos">,</span> <span class="pl-kos">{</span>
    <span class="pl-en">options</span>: <span class="pl-kos">(</span><span class="pl-kos">{</span> url <span class="pl-kos">}</span><span class="pl-kos">)</span> <span class="pl-c1">=&gt;</span> <span class="pl-kos">(</span><span class="pl-kos">{</span> 
      <span class="pl-c1">variables</span>: <span class="pl-kos">{</span>
        <span class="pl-c1">seoName</span>: <span class="pl-s1">url</span><span class="pl-kos">.</span><span class="pl-c1">query</span><span class="pl-kos">.</span><span class="pl-c1">productSeoName</span><span class="pl-kos">,</span>
        <span class="pl-c1">crossSellingLimit</span>: <span class="pl-c1">12</span>
      <span class="pl-kos">}</span> 
    <span class="pl-kos">}</span><span class="pl-kos">)</span><span class="pl-kos">,</span>
    <span class="pl-en">props</span>: <span class="pl-kos">(</span><span class="pl-kos">{</span> <span class="pl-c1">data</span>: <span class="pl-kos">{</span> loading<span class="pl-kos">,</span> error<span class="pl-kos">,</span> product <span class="pl-kos">}</span> <span class="pl-kos">}</span><span class="pl-kos">)</span> <span class="pl-c1">=&gt;</span> <span class="pl-kos">(</span><span class="pl-kos">{</span>
      loading<span class="pl-kos">,</span>
      error<span class="pl-kos">,</span>
      product
    <span class="pl-kos">}</span><span class="pl-kos">)</span>
  <span class="pl-kos">}</span><span class="pl-kos">)</span><span class="pl-kos">(</span><span class="pl-v">MyComponent</span><span class="pl-kos">)</span></pre></div>
<h2 dir="auto">Error</h2>
<p dir="auto">error: TypeError: Cannot read property 'query' of undefined at options [...]</p>
<h2 dir="auto">Your Environment</h2>
<p dir="auto">Next 5.0.0<br>
Apollo client 2.2.7<br>
React 16.2</p>