I'm looking to add some parameters to my Solr query that's not currently supported by the Search API (hit highlighting to be specific). Is there a way (like a pipeline processor or something) to intercept the query and modify it before it gets sent over to Solr?
Depending on your version there's a way to replace the component that writes the URL and makes the connection to Solr. If you didn't feel like building out a Linq provider (and I don't recommend it), this could be a last resort hook into the process.
I was looking at this a little while ago as a candidate for adding support for Solr Cloud redirection and authenticated Solr endpoints, but I haven't completed that work yet. I think some of these features are in the works at Sitecore now anyway.
The widget in question is wired in at:
<sitecore>
<contentSearch>
<indexConfigurations>
<solrHttpWebRequestFactory type="HttpWebAdapters.HttpWebRequestFactory, SolrNet" />
</indexConfigurations>
</contentSearch>
</sitecore>