GET can only be used for idempotent things that don't change any state, and I don't believe there is anything in our API that is really idempotent + doesn't change state?
Anyway, moot point since it sounds like you're also having problems with third party clients trying to do POST requests. I did some investigation and it looks like the problem is that the `python-lj` library is using insecure HTTP which is explicitly no longer supported. Someone will have to fix that.
So, I don't believe that not supporting GET has anything to do with the problem here, it's just a broken client not accessing the secured HTTPS endpoint correctly.
For DW, just subclass LJServer and create DWTransport to use xmlrpclib.SafeTransport instead of xmlrpclib.Transport. (Or don't bother and just straight use xmlrpclib.SafeTransport, sure, whatever:P) try: import xmlrpc.client as xmlrpclib except ImportError: import xmlrpclib try: import urllib.request as urllib2 except ImportError: import urllib2
no subject
Anyway, moot point since it sounds like you're also having problems with third party clients trying to do POST requests. I did some investigation and it looks like the problem is that the `python-lj` library is using insecure HTTP which is explicitly no longer supported. Someone will have to fix that.
So, I don't believe that not supporting GET has anything to do with the problem here, it's just a broken client not accessing the secured HTTPS endpoint correctly.
no subject
Thank you.
no subject
For DW, just subclass LJServer and create DWTransport to use xmlrpclib.SafeTransport instead of xmlrpclib.Transport. (Or don't bother and just straight use xmlrpclib.SafeTransport, sure, whatever:P)
try:
import xmlrpc.client as xmlrpclib
except ImportError:
import xmlrpclib
try:
import urllib.request as urllib2
except ImportError:
import urllib2
from lj import lj
class DWTransport(xmlrpclib.SafeTransport):
pass
class DWServer(lj.LJServer):
def __init__(self, clientversion, user_agent, host='https://www.dreamwidth.org/'):
super().__init__(clientversion, user_agent, host)
transport = DWTransport()
transport.user_agent = user_agent
self.server = xmlrpclib.ServerProxy(host + 'interface/xmlrpc', transport)
dreamwidth = DWServer("Python-Blog3/1.0", "http://yoursite.com; your@email.com")
dreamwidth.login(username, password)
response = dreamwidth.postevent(subject, message)
no subject
no subject